+
95
-

请问module.exports与export default有什么区别?

请问module.exports与export default有什么区别?


网友回复

+
15
-

这是CommonJS模块规范和ES6模块规范模块的两种写法。

module.exports是commonJS规范,nodejs就是用的这个规范,而export default是ES6的规范。

下面我们来示例讲讲两种规范。

CommonJS模块规范

Node应用由模块组成,采用CommonJS模块规范。 根据这个规范,每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。 CommonJS规范规定,每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。
var x = 5;
var addX = function (value) {
return value + x;
};
module.exports.x = x;
module.exports.addX = addX;
上面代码通过mod...

点击查看剩余70%

我知道答案,我要回答