Js模块化开发规范
- ECMAScript Module 标准规范
一个js文件,就可以是一个模块,模块与模块之间相互独立。
ex.js
var val = 'ex data'
export {val as value}
im.js
import {value as vv} from './ex.js'
console.log(vv)
Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
//产生错误的原因是node.js默认情况下不支持ECMAScript Module 标准规范,需要进行一下配置,可以把文件名改成ex.mjs和im.mjs。或者set "type": "module" in the package.json
package.json
{
"type": "module"
}
- CommonJS 规范
导出方式
module.exports = val
module.exports.val = val
module.exports.foo = foo
exports.val = val
exports.foo = foo
导入方式
var m1 = require('./m1.js')