模块功能主要由两个命令构成:export和import
- 输出:export default 名字
- 引入文件:import 变量名 from ‘默认输出文件的路径’;
- 输出方法:export const 方法名 = (变量) => { return 返回的结果 }
- 引入方法:import { 方法名 } from ‘路径’
export
1 | var firstName = 'Michael'; |
import
- 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)
- 动态模块路径
- import(f())
- .then(…);