🔵ES6Module

本文最后更新于:2022年4月8日 晚上

🌿导出

可以用export对外暴露变量,方法,

定义后导出需用对象,expor default除外

1
2
3
4
5
export let x = 0
export const y = (a, b) => a + b

// 或一次性
export { x, y }

🌿重命名

导出时用as重命名导出内容

1
2
3
4
export {
a as method1,
b as method2
}

import静态加载

🥕加载

import从路径导入export的js模块,名称需一致

导入需用对象,expor default除外

1
import { a, b } from 'url'

🥕加载重命名

as关键字重命名

1
import { a as method1, b as method2 } from 'url'

🥕全部加载

*可以将暴露的内容全部导入

1
import * as methods from 'url'

export default匿名

一个只因用一次

export default可以导出匿名参量,且无需花括号,导出内容不可是变量声明语句

import时可自定义命名,且无需花括号

即导出一个default变量

1
2
3
export default function(x, y) { // function add(x, y ){也一样
return x + y
}
1
import add from 'url'

转发

export ... from 'url'在此文件未加载相应的模块

可以用于更改接口名称与批量export

1
2
export { a, b as method1 } from 'url'
export * as methods from 'url' // export * 忽略default

import()动态加载

import()在执行时加载并返回一个promise对象

🍈条件加载

1
2
3
4
if(dark)
import('url1')
else
import('url2')

🍈动态路径

可以用变量来指定加载路径

1
2
3
let url = 'url'
import(url)
.then()

🔵ES6Module
https://qingshaner.com/ES6module/
作者
清山
发布于
2022年1月27日
许可协议