导出
基本导出
export有两种基本导出的方式,复杂的导出语句也是在这个的基础上。
- 命名导出
export xxx
- 默认导出
export default xxx
一个模块(所谓的模块指的是一个js文件)只能有一个默认导出,可以同时拥有多个命名导出,命名导出和默认导出可以共存。
复杂导出
复杂的导出是在简单导出的基础上添加了以下类型的语句复合而成。
重导出/聚合
可以在一个父模块当中导入其他子模块的内容,再将这些子模块的内容导出,以实现从一个模块导入。基本句式
export xxx from xxx
列表导出
不带default的export语句,后面的花括号是列表,例如
export { myFunction,myVariable };
表示命名导出myFunction
和myVariable
两个变量
带default的export语句,后面的花括号表示导出值的字面量。
重命名
myFunction as function1
表示将myFunction
重命名为function1
。
default as function1
表示将导入模块的默认导出重命名为function1
。
导入
基本导入
基本导入有两种:
- 导入默认导出
- 导入命名导出
默认导出的语句:
import defaultExport from "module-name";
命名导出的语句:
import { export } from "module-name";
这两者的差异在于默认导出没有花括号,且默认导出可以用任意名称导入,命名导出只能用原始名称导入。
复杂导入
常见的复杂导入有两种:列表导入和重命名,形式和导出相同。