每个人我都是NODE.JS的初学者,我正在其中使用module.exports函数,其中已编写了hello函数。我试图从其他文件导入。但是它不起作用。任何人都可以解决此问题。谢谢提前...
index.js
module.exports=function(){
hello:(data)=>{
return "Good night" +data;
}
}
trail.js
const index=require('./index');
const e=new index();
console.log(e.hello("abc"));
答案 0 :(得分:0)
我找到了解决方案,我们必须更改index.js中的代码。在ES6中有可用的函数构造函数。我们应该使用此关键字,此关键字引用当前的类对象。因为在javascript中,函数是第一类Objects。纠正我如果我错了。如果有人知道也欢迎其他人提出解决方案,请发布答案。
Index.js
module.exports=function(){
this.hello=(data)=>{
return "Good night" +data;
}
}
Trail.js
const index=require('./index');
const e=new index();
console.log(e.hello("abc"));
答案 1 :(得分:0)
将函数creating new
objects from it用作构造函数时,必须使用this
引用每个对象以分配其属性:
module.exports=function(){
this.hello = (data) => {
return "Good night" +data;
};
}
语法<identifier>:
具有不同的含义,具体取决于其位置/周围。在函数主体中使用时,在语句的开头,它仅定义label。要使它定义属性,必须在object initializer中使用它。
答案 2 :(得分:0)
您也可以通过以下方式使用它:
module.exports=function(data){
return "Good night" +data;
}
const temp = require('./index');
console.log(temp('demo developer'));
答案 3 :(得分:0)
我不知道您要找出正确的决定是什么,但也许您想这样做:
index.js:
exports.hello = data => {
return 'Good night ' + data;
};
trail.js:
const e = require('./index');
console.log(e.hello('Jhonny'));