我有一个main.js文件和两个类文件(当然是。js)。我会用Nodejs。
以下是我需要实现的目标:
main.js class 1.js class 2.js
-------- --------- ---------
callin class 1 doing somethin do somethin
to do some work but needing and return results
the class 2
我在类1中使用了module.exports=ClassOne
和const ClassOne=require('./class1.js');
,但是现在我必须将类导入到类中,如何导入呢?
我已经用其他问题说到这一点了。我看到了一个相当混乱的局面,但还是设法走到了这一步。现在我真的不知道js是如何工作的,也不知道我应该如何成功地导入到一个自己包含的类中。
谢谢大家!
class2'。js
class Class2 {
constructor(){}
doSomething() {
return new Promise((resolve, reject) => {
resolve(`I did something too!`);
});
}
}
exports.Class2 = Class2;
class1'js
const Class2 = require('./class2').Class2;
class Class1 {
constructor(){}
async doSomething() {
return new Promise(async (resolve, reject) => {
const class2 = new Class2();
const msg = await class2.doSomething();
resolve(`Look! I did something! => ${msg}`);
});
}
}
exports.Class1 = Class1;
main.js
const Class1 = require('./class1').Class1;
const class1 = new Class1();
class1.doSomething().then(msg => {
console.log(msg);
});
使用节点运行项目
node main.js
输出将为:
Look! I did something! => I did something too!
您将需要用module.exports导出其他2个JS类,并且需要哪个文件(我相信main.JS)都需要使用require和正确的文件路径导入它们。
//class1.js
function class1() {
return 'I am class1';
}
module.exports = class1;
//class2.js
function class2() {
return 'I am class1';
}
module.exports = class2;
//Main.js
const class1 = require('./class1.js');
const class2 = require('./class2.js');
console.log(class1());
console.log(class2());