// X.js
export default X; // export default只能应用一次
export A;
export B;
// 应用 as 从新定义导出的接口名称,暗藏模块外部的变量
export C as C_export_name;
- import {A, B} from '/X.js';
import { D } from '/X.js'; //报错
加上花括号只能承受文件中export的明确导出接口的变量,函数与类,如果没有对应名称则会报错。
- import X from '/X.js';
import D from '/X.js';
import A from '/X.js';
//此时X,D,A承受的是export default后导出的对象。 - import {A as A_import_name} from 'X.js';
应用 as 从新定义变量名 - import '/X.js';
// 导入内部的模块,并立刻执行, 但对于其中的export会主动疏忽
import('/X.js').then(result=>{ console.log('then:',result)})
import()函数返回一个Promise对象。result接管了X.js模块。蕴含所有export, export default的对象。
- import * as import_name from '/X.js';
import_name会承受一个Module对象,外面蕴含所有export, export default的对象。