前端模块化分类
es6模块化诞生之前,js社区尝试提出了AMD,CMD,Commjs模块化规范
AMD,CMD适用于浏览器端的JavaScript模块化
CommonJs适用于服务器端的JavaScript模块化
Es6即适用于浏览器端也适用于服务器端
ES6模块化规范中定义
-
每个js文件都是一个独立的mok
-
导入其它模块成员使用import
-
向外共享模块成员使用export
nodejs默认仅支持CommonJs模块化规范,想基于node.js体验es6的模块化,需要配置
1:安装了v14.15.1或更高版本的node
2:在package.json的根节点中添加"type":"module" 节点
默认导出
export default 默认导出的成员
注意:每个模块中,只允许使用唯一的一次export default ,否则会报错!
默认导入
import 名称 from '地址';
注意: 默认导入时接收名称可以任意名称,只要是合法的成员名称就可以
按需导入
import 名称 from '地址';
按需导出
export let s1 = "aaa";
按需导入和按需导出注意事项
-
每个模块中可以使用多次按需导出
-
按需导入的成员名称必须和按需导出的名称保持一致
-
按需导入时,可以使用as进行重命名
- 按需导入可以和默认导入一起使用
直接导入并执行模块中的代码
如果只想单纯的指向某个模块中的代码,并不需要得到模块中向外共享的成员
import ' 地址 ';