gpt4 book ai didi

javascript - NodeJs 中的级联 require,要求一个文件需要另一个文件 NodeJs

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

我有一个文件。a.js

class A{
constructor(name){
this.name = name;
}

displayName(){
console.log(this.name);
}
}
module.exports = A;

另一个文件common.js

const A = require('./a');
exports.A;

另一个文件b.js

const common  = require('./common');
var a = new common.A('My name is khan and I am not a terrorist');
a.displayName();

我收到错误A 不是构造函数。请帮忙,如何才能完成。请原谅我的愚蠢错误,我是新手。

最佳答案

以下是您应该进行的修复...

a.js 文件中,您正在导出 Render,但是,它应该是 A...

class A {
constructor(name) {
this.name = name;
}
displayName() {
console.log(this.name);
}
}
module.exports = A;

在您的 common.js 文件中,您必须导出一个由 common 类/函数/变量或其他内容组成的对象,如下所示:

const A = require('./a');
const someOtherVariable = 'Hello World!';
module.exports = {
A: A,
someOtherVariable: someOtherVariable,
};

评论:您“必须”的原因是因为您想要使用具有以下语法的 A 类:common.A...假设文件的名称是 common,您可能导出不仅仅是一个 ,因此将它们打包到 对象...

最后,在 b.js 文件中,您可以使用 common.A 语法来提取您要使用的类...

const common = require('./common');
const a = new common.A('My name is khan');
a.displayName();
console.log(common.someOtherVariable); // Hello World!

希望这有帮助。

关于javascript - NodeJs 中的级联 require,要求一个文件需要另一个文件 NodeJs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43527798/

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