import and export - pod4g/tool GitHub Wiki
1. export
赋值语句的左边和右边都可以被export出去,export出去的变量相当于const
。
还可以export整个赋值语句。
导出分为2种:
-
命名导出
-
export {myFunction}
-
export const PI = Math.PI
-
默认导出
-
export default myFunction
-
export default const PI = Math.PI
// myModule.js
function a(){
console.log('I am function a')
}
function b(){
console.log('I am function b')
}
function c(){
console.log('I am function c and i am a default export 2')
}
// 导出number型
export var num = 1
export let numberObject = new Number(num)
// 导出string型
export var str = 'liyanfeng'
export let stringObject = new String(str)
// 导出boolean型
export let bool = true;
export const booleanObject = new Boolean(bool);
// 导出null型
export var Null = null
// 导出undefined型
export let Undefined = void 0
// 导出Symbol
export let symbol = Symbol('liyanfeng')
export const object = {
name: '李彦峰',
age: 26
}
var obj = {
0:0,
1:1,
length:2
}
export var sayName = function(){
console.log('我是李彦峰')
}
export const arr = [1,2,3,obj]
console.log('I am file utils.js')
export const PI = Math.PI;
export { a, b }
export default c
2. import
第一种
import * as myModule from 'myModule' // 类似于java中的: import java.io.*
// 导入 myModule.js 中所有的命名导出(没有默认导出哦~),然后挂到 myModule 的命名空间下
myModule.a() // I am function a
myModule.b() // I am function b
第二种
有副作用,相当于执行一遍 myModule.js
文件内的代码。因为没有任何引用或命名空间引用这个模块,此模块内的导出将永远不能被使用
import 'myModule'