nodejs模块化编程之引用模块方法
一个js文件就是一个模块,nodejs 默认CommonJS规范
CommonJS规范
给每个模块都提供了一个module对象
{
id: '.',
path: '/code/example',
exports: {},
filename: '/code/example/file.js',
loaded: false,
children: [],
paths: [
'/code/example/node_modules',
'/code/node_modules',
'/node_modules'
]
}
ex.js
var val = 'CommonJS'
var r = 'r'
module.exports.val = val
module.exports.r = r
// exports.val = val
im.js
var m1 = require('./ex.js')
console.log(m1)
ECMAScript Module(ES6标准模块规范)
方式一、添加package.json
ex.js
var val = 'extract data'
export {val}
// export {val as value}
//export default 整个只有一个内容
im.js
import {val} from './ex.js'
// import {value as vv} from './ex.js'
// import val from './ex.js'
console.log(val)
// console.log(vv)
package.json
{
"type":"module"
}
方式二、 修改文件后缀名
ex.mjs
var val = 'extract data'
export {val}
im.mjs
import {val} from './ex.mjs'
console.log(val)
运行
node im.mjs