ES6 模块化数据暴露方式分为三种:
1. 分别暴露
//分别暴露
export let name = "ES6模块化";
export function sayHello() {
console.log("Hello,world!");
}
通过在需要暴露的数据前加export实现;
2. 统一暴露
// 统一暴露
let city = '北京';
const scoer = function(){
console.log("给我打分!")
}
export{city,scoer};
通过export{ }的形式,{ }里存放需要暴露的数据,每个数据用逗号隔开;
3 . 默认暴露
// 默认暴露
export default {
data : "四月",
test : function(){
console.log("一个小测试!!!")
}
}
通过export default { },将暴露的数据包裹;
ES6 模块化数据导入的方式:
1. 通用导入方式(三种暴露方式均可使用)
// 导入m1模块
import * as m1 from "./js/m1.js";
// 导入m2模块
import * as m2 from "./js/m2.js";
// 导入m3模块
import * as m3 from "./js/m3.js";
// 使用模块
console.log(m1);
console.log(m2);
console.log(m3);
m3.default.test();// 调用m3模块的test方法
控制台输出结果:
2. 解构赋值导入方式(可实现按需导入)
import { name , sayHello} from "./js/m1.js";
import { scoer} from "./js/m2.js";
import { default as m3} from "./js/m3.js";
console.log(name);
sayHello();
scoer();
console.log(m3);
控制台运行结果:
3. 简便形式(只针对默认暴露使用)
import m3 from "./js/m3.js";
console.log(m3);
m3.test();
控制台输出结果: