ES学习module模块化(十二)
这里写目录标题
- 一、概述
- 二、export命令
- 三、import命令
- 四、export default 命令
一、概述
ES6 在语言标准的层面上,实现了模块功能,而且实现得相当简单,完全可以取代 CommonJS 和 AMD 规范,成为浏览器和服务器通用的模块解决方案。
- ES6功能模块主要有两个命令构成:export和import。
- export命令用于规定模块的对外接口,import命令用于输入其他模块提供的功能。
二、export命令
//module/index.js
export const name = 'zhangsan ';
export const age = 18;
export const color = 'red ';
export const sayName = function() {
console.log(fristName);
}
//也可以这样
const name = 'zhangsan ';
const age = 18;
const color = 'red ';
const sayName = function() {
console.log(fristName);
}
export {name,age,color,sayName}
三、import命令
使用export命令定义了模块的对外接口以后,其他 JS 文件就可以通过import命令加载这个模块。
//main.js
import {name,age,color,sayName,fn} from './modules/index.js';
如果想为输入的变量重新取一个名字,import命令要使用as关键字,将输入的变量重命名。
import * as obj from './modules/index.js';
console.log(obj);
四、export default 命令
使用export default命令为模块指定默认输出
//export-default.js
export default function(){
console.log('foo');
}
//或者写成
function foo() {
console.log('foo');
}
export default foo;
在其它模块加载该模块时,import命令可以为该匿名函数指定任意名字
//import-default.js
import customName from './export-default.js'
customNmae();//foo