模块化规范
- CommonJS : node.js require('')...
- AMD : require.js
- CMD : sea.js 早就不维护了
- ES6 : 2015年
es6中到导入和导出
关键字:export import as export default
- export导出
一个一个导出
export const a = 123
export const b = 'abc'
export const sum = (a, b) => a + b
const obj = {
name: 'della'
}
export { obj }
import导入时,名字必须一样,不过可以 通过as起别名
import { a, b as bb, sum, obj } from './module.js' //给b起别名
// 导出的名字和导入的名字必须一样
console.log(a)
console.log(sum(a, bb))
console.log(obj)
export一次导出多个,导入时一样
const a = 123
const b = 'abc'
const sum = (a, b) => a + b
const obj = {
name: 'della'
}
export { obj, a, b, sum }
- export default
导出时,不能在default后面接声明语句,一个文件只能有一个default导出
const a = 123;
export default a
导入时,没有大括号 { } ,名字可以改变,
import aa from './module.js'
console.log(aa) //123
default一次导出多个
//导出
const a = 123
const b = 'abc'
const sum = (a, b) => a + b
const obj = {
name: 'della'
}
export default { obj, a, b, sum }
//导入
import mod from './module.js'
console.log(mod) //{obj: {…}, a: 123, b: 'abc', sum: ƒ}
- 导出时有export又有export default
//导出
const a = 123;
export default a
export const str = 'abc'
//导入时1
import a, { str } from './module.js'
console.log(a, str)
//导入时2
import * as mod from './module.js'
//数据都挂在default上了
console.log(mod.default.a) //123
网友评论