[英]Node coffeescript class files and inheritance
我有2個類文件:
foo.coffee: class Foo
bar.coffee:class class Bar extends Foo
如何定義這些類以使它們全局可用? 我在Bar
中得到錯誤,沒有定義Foo
。
我有一個index.js文件,我調用node
來運行腳本。 這是index.js的內容,我也很可能也錯了:
exports.Foo = require("./foo")
exports.Bar = require("/bar")
foo.coffee:
class Foo
// ...
module.exports = Foo
bar.coffee:
Foo = require "./foo"
class Bar extends Foo
// ...
module.exports = Bar
index.coffee:
exports.Foo = require "./foo"
exports.Bar = require "./bar"
更新:你還需要用coffee
運行.coffee
文件,除非你先編譯它們。
更新2:您的模型結構取決於您。 我喜歡上面的模式(簡單的模塊只導出一個函數 - 當你需要分配給module.exports
因為你不能簡單地分配給exports
)但是其他人更喜歡這樣的結構:
foo.coffee:
class Foo
// ...
exports.Foo = Foo
bar.coffee:
Foo = require("./foo").Foo
class Bar extends Foo
// ...
exports.Bar = Bar
index.coffee:
exports.Foo = require("./foo").Foo
exports.Bar = require("./bar").Bar
每個模塊導出具有一個或多個屬性的對象。
你也可以寫:
class @MyClass
[...]
{MyClassName} = require './myclassFile'
myClass = new MyClassName
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.