gpt4 book ai didi

javascript - 将参数传递给基于类的 Node 模块

转载 作者:太空宇宙 更新时间:2023-11-04 03:31:52 25 4
gpt4 key购买 nike

我有这个 Node.js 模块结构:

class Foo {

log() {
console.log(this.bar); // should log 'hello'
}
}

module.exports = new Foo;

我如何“要求”上述内容并传递“bar”作为参数?

例如:

var Foo = require("./foo.js")("hello");
<小时/>

我对如何使用基于类的模块执行此操作特别感兴趣。

<小时/>

更新:基于类的单例是一个坏主意™。我已改用对象文字模块结构。

最佳答案

您正在混合类和模块定义。您不导出实例。您导出一个定义,并在导入后实例化该定义。然后你必须调用一个函数

如果您使用的是 ECMA2015 类,那么您可以编写:

export default class Foo {
constructor(bar) {
this._bar = bar;
}

log() {
console.log(this._bar);
}
}

那么你的调用代码应该如下所示:

import Foo from './foo.js';
let foo = new Foo('Boom!');
foo.log();

import 关键字的用法类似于 ES5 中的 require。

关于javascript - 将参数传递给基于类的 Node 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36370739/

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