Node.js module.exports的用途是什么,如何使用它?
Node.js module.exports的用途是什么,如何使用它?
我似乎找不到任何相关信息,但是正如我在源代码中经常看到的那样,它似乎是Node.js的重要组成部分。
根据Node.js文档:
对当前的引用
module
。特别module.exports
是与导出对象相同。请参阅src/node.js
以获取更多信息。
但这并没有真正的帮助。
究竟是module.exports
做什么的,一个简单的例子是什么?
回答:
module.exports
是require
调用结果实际返回的对象。
该exports
变量最初设置为同一个对象(即它是一个速记“别名”),所以在模块的代码,您通常会写是这样的:
let myFunc1 = function() { ... };let myFunc2 = function() { ... };
exports.myFunc1 = myFunc1;
exports.myFunc2 = myFunc2;
导出(或“暴露”)内部作用域函数myFunc1
和myFunc2
。
在调用代码中,您将使用:
const m = require('./mymodule');m.myFunc1();
最后一行显示的结果require
(通常)只是一个可以访问其属性的普通对象。
注意:如果您覆盖exports
,则将不再引用module.exports
。因此,如果您希望将新对象(或函数引用)exports
分配给该对象,则还应将该新对象分配给module.exports
值得注意的是,添加到exports
对象的名称不必与要添加的值的模块内部作用域名称相同,因此您可以:
let myVeryLongInternalName = function() { ... };exports.shortName = myVeryLongInternalName;
// add other objects, functions, as required
其次是:
const m = require('./mymodule');m.shortName(); // invokes module.myVeryLongInternalName
以上是 Node.js module.exports的用途是什么,如何使用它? 的全部内容, 来源链接: utcz.com/qa/414527.html