含义
ES6模块主要有两个功能:export 和 import
export用于对外输出本模块(一个文件可以理解为一个模块)变量的接口
import用于在一个模块中加载另一个含有export接口的模块
区别
- 在一个文件或模块中,export、import可以有多个,export default仅有一个
- 模块中通过export 导出的(属性或者方法)可以修改,但是通过export default导出的不可以修改
用法
export 导出时,import 要用大括号括起来
// a.js中
export const name = 'lwb'
// b.js中
import { name } from '@/config/a.js'
console.log('name', name) // name = lwb
按需导入
// a.js中
const name = 'lwb'
const age = 18
export {
name,
age
}
// b.js中
import { name } from '@/config/a.js'
console.log('name', name) // name = lwb
export default 导出时,import 不需要大括号
// a.js中
const age = 18
export default age
// b.js中
import age from '@/config/a.js'
console.log('age ', age ) // age = 18
导出对象,这样就把整个对象都导入进来,用属性的去访问
// a.js中
const person = {
name: 'lwb',
age: 18
}
export default person
// b.js中
import person from '@/config/a.js'
console.log('person', person)
// person = {name: 'lwb', age: 18}
性能
es6中export和export default的性能问题,有区别吗?
我自己平常写的话,会写export 多一点,因为写的时候,可以不用带方法名,代码上也和简洁点
import 多个简写
import {A, B, C, D} from {‘a.js’, ‘b.js’ …}
module.exports
module.exports = obj // obj 为对象
引入
import { A } from ‘obj’