我正在读关于module.exports in Node.js设计模式的文章。这本书中提到:
重新分配导出变量没有任何效果,因为它不会改变module.exports的内容,它只会重新分配变量本身。
因此,下列代码是错误的:
exports = function() {
console.log('Hello');
};我不明白为什么上面的作业是错的?
发布于 2016-06-17 13:46:44
通过这样做,您将覆盖本地exports变量。它是每个包装函数文件周围的Node.js的本地文件。在使用新对象时,V8无法知道您对原始exports对象做了哪些修改。
您要做的是覆盖module对象中的module键。
module.exports = function() {
console.log('Hello');
};为了更方便,您还可以将它分配给exports变量,以便您可以在本地利用它:module.exports = exports = ...。这就是exports,一种访问module.exports的更快的方法。
https://stackoverflow.com/questions/37883221
复制相似问题