模块功能主要由两个命令构成:export和import
1 | 输出:export default 名字 |
export
1 | var firstName = 'Michael'; |
import
1 | import { 输入的对象 } from '路径'; |
- 多次执行同一语句,只执行一次
export default 默认指定输出
1 | export default function () { |
export 与 import 的复合写法
1 | export * as ns from "mod"; // *表输出这个模块的所有模块和方法,但会忽略该模块的default方法 |
import()类似于 Node.js 的require()方法
- 区别主要是前者是异步加载,后者是同步加载
- 按需加载
1
2
3
4
5
6
7
8
9button.addEventListener('click', event => {
import('./dialogBox.js')
.then(dialogBox => {
dialogBox.open();
})
.catch(error => {
/* Error handling */
})
}); - 条件加载 (if…else)
- 动态模块路径
1
2import(f())
.then(...);
- 注意:不使用require()