两个模块之间如何通信? 利用module.exports
举个例子:现在demo1.js和demo2.js两个模块,在demo1.js中加载demo2.js,默认返回的是对象
demo1.js
console.log(require("./demo2"));//{}
demo2.js
function add(x,y) {
return x+y;
}
var result = add(1,2);
其实在node.js中,一个模块使用module.exports向外暴露数据,这样require("./demo2")返回的就是module.exports,那么我们可以利用对象的特性( .属性 )将 该模块要暴露出去的数据 暴露给加载他的模块。这样两个模块就实现了通信。
demo1.js
console.log(require("./demo2"));//{ result: 3 }
demo2.js
function add(x,y) {
return x+y;
}
module.exports.result = add(1,2);