node中导出(暴露)成员module.exports和exports区别

前言:由于node.js是模块化引用,不同的文件(模块)不能随便调用里面的数据或方法。如果你想调用其它文件的数据或方法需在本文件使用require引用文件,然后在被引用的文件使用module.exports或直接用exports导出(暴露)才可使用其它文件的数据或方法

module.exports和exports区别:node默认是用module.exports来导出文件,但为了方便所以在里面增加了一个module.exports=exports

所以在引用多文件时我们可以直接使用exports(exports.a = 123 exports.b = 456)因为此时没有给exports重新赋值

但如果我们只想引用单个方法或数据 exports=123 这样就是给exports重新赋值了,然后默认导出是module.exports所以exports就没用了也就无法导出了,所以导出单个方法或数据必须用module.exports

总结:只要不给exports或module.exports重新赋值就没问题,重新赋值也只能给module.exports重新赋值。如果实在不清楚那所有的导出都用module.exports

 

posted @ 2020-12-05 11:01  封兴旺  阅读(291)  评论(0编辑  收藏  举报

联系方式: 18274305123(微信同号)