1、 再使用export暴露某个接口后,其他JS文件就可以通过import命令加载这个模块。
e.g
//main.js
import {firstName,lastName,year} from './profile';
function setName(element) {
element.textContent = firstName + ' ' + lastName;
}
注:引入的的变量名必须和暴露的模块的变量名相同
2、import命令具有提升效果,即在代码编写使可以先使用,后引入。
func1();
import { func1 } from 'main' ;
3、由于import是静态执行,所以不能使用表达式和变量,这些只有在运行时才能得到结果的语法结构。
// 报错
import { 'f' + 'oo' } from 'my_module';
// 报错
let module = 'my_module';
import { foo } from module;
// 报错
if (x === 1) {
import { foo } from 'module1';
} else {
import { foo } from 'modile';
}
4、import可以执行所加载的模块。所以可以写成如下代码。
import 'lodash';
//若重复加载,则只会执行一次。
import 'lodash';
import 'lodash';