ES6模块化规范
Node中运行ES6模块
将所有JS文件后缀改为.mjs
在package.json(没有就新建)中声明
type为module1
2
3
4// package.json
{
"type": "module"
}
暴露
分别暴露
在想要暴露的数据前加上export关键字
1 | export const name = "666" |
统一暴露
在代码的最后加上类似对象结构的语句expost {},不能写成name: name
1 | const name = "666" |
默认导出
在代码最后使用export default关键字后接对象作为默认导出
引入
当js文件使用了ES6模块,浏览器引入时就需要修改type为module
1 | <script type="module" src="./index.js"></script> |
全部引入
* as后接命名,适用于所有方法的暴露
1 | import * as abc from './app.js' |
命名引入
当使用分别暴露与统一暴露时才可使用命名引入
1 | import {name} from './app.js' |
若想为name重新命名可添加as
1 | import {name as name1} from './app.js' |
默认引入
只有使用默认暴露时才可使用
1 | import abc from './app.js' |
abc即为默认导出的对象
import可以不接受任何数据,表示执行该模块代码
注意
引入的数据与暴露的数据公用一块内存空间,因此暴露的数据一般设为const
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 MNCLI!
评论









