gpt4 book ai didi

node.js - Node CoffeeScript 类文件和继承

转载 作者:IT老高 更新时间:2023-10-28 23:23:14 25 4
gpt4 key购买 nike

我有 2 个类文件:

foo.coffee:类 Foo

bar.coffee: 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

每个模块导出一个具有一个或多个属性的对象。

关于node.js - Node CoffeeScript 类文件和继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9465509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com