模块化

2019-02-23  本文已影响0人  jiangzj

三种模块化

ES6模块和CommonJS模块的差异

module.exports 与 exports

module变量代表当前的模块,exports是module的一个属性(即module.exports),它是对外的接口。加载某个模块的时候,就是加载该模块的module.exports。

const add = (num1, num2) => {
    return num1 + num2
}

// 方法1
module.exports.add = add

// 方法2
module.exports = {
    add,
}

为了方便,Node.js提供了一个exports变量,指向了module.exports。即

var exports = module.exports

于是,还可以用下面的方式来导出模块

...
exports.add = add

但是,注意不能给exports直接赋值,这样会改变原来exports的指向。

上一篇 下一篇

猜你喜欢

热点阅读