ES6的模块化

如何在浏览器中使用ES6模块

格式:<script type="module" src="....."></script>

特点:模块作用域、自动严格模式

导出变量的五种方式

第一种方式(逐个导出)
//module.js
export var a=1;
export var b=2;
//main.js
import {a,b} from './module.js';
console.log(a,b)
第二种方式(先声明,再统一导出)
//module.js
var a=1;
var b=2;
export {a,b as myB};//重命名
//main.js
import {a,myB as B} from './module.js';//重命名
console.log(a,B)
第三种方式(默认导出,只能使用一次)
//module.js
export default function(){
return 'export default默认导出函数,引用名字随便起吧';
}
//main.js
import tr from './module.js';
console.log(tr())
第四种方式(全模块同步导入)
//module.js
export var a=1;
export var b=2;
export default function(){
return 'export default默认导出函数,引用名字随便起吧';
}
//main.js
import * as all from './module.js';
console.log(all)  //tr(),a,b
第五种方式(全模块异步导入,使用promise)
//module.js
export var a=1;
export var b=2;
export default function(){
return 'export default默认导出函数,引用名字随便起吧';
}
//main.js
import ('./module.js').then(function(all){
console.log(all)
});

注意:
1、export default 向外暴露的成员,可以使用任意变量来接收

2、在一个模块中,export default 只允许向外暴露一次

3、在一个模块中,可以同时使用export default 和export 向外暴露成员

4、使用export向外暴露的成员,只能使用{ }的形式来接收,这种形式,叫做【按需导出】

5、export可以向外暴露多个成员,同时,如果某些成员,在import导入时,不需要,可以不在{ }中定义

6、使用export导出的成员,必须严格按照导出时候的名称,来使用{ }按需接收

7、使用export导出的成员,如果想换个变量名称接收,可以使用as来起别名

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容