es6导入导出基础 | 掘金.日新计划

117 阅读2分钟

这是我参与「掘金日新计划 · 2 月更文挑战」的第 6 天

es6中对模块的导入导出

在es6中是一个文件一个模块,在定义模块的时候,我们是不将模块里面定义的细节展示出来,一般是通过接口向外暴露其用法,导出的变量是可以给你导入的地方是用的,如果是没有导出的变量,是模块内部私有的。模块导入时,一般采用的是预加载的方法,在文件资源最上方只导入一次,模块里面的资源会被加载好,之后一般不会再进行加载,后面会一直使用加载后的资源。

  • 使export将开发的接口导出
  • 使用mport导入模块接口
  • 使用 *可以导入全部的模块接口

导入是以引用的方式导入,无论模块里面是标量还是变量,模块内部变量发生变化的时候将影响已经导入的变量。

导出模块

导出变量 export const name = 'tang' 导出函数 export const func = function() { return '这真是一个美好的生活' } 导出类 export class Admin { constuctor(); show() {} } 定义过后,一起导出 const sex = '男' const admin = function() { return '这是一个会员卡片' } class Admin { show() { return '展示一些人的生活于乐趣' } } export { sex, admin, Admin}

导入模块

具名导入

import { sex, admin, Admin} form '' 一句话分别导入模块中的内容

批量导入

import * as api form '' 在此处一下将模块中所有的变量都导入,并且通过as给他起了一个别名api

默认导出导入

使用default导出,导入式不需要加{},一般不建议使用默认导出,默认导出会使程序员随以命名变量。如果要使用默认导入,最好与文件的模块名字相关联。

默认导出

export default {a=10} 默认导入 import api form ''

混合导出

导入默认接口不需要使用{},导入普通接口需要使用{} 混合导入默认接口与普通接口 import show, {name} form '' 批量导入时,使用default导入默认导出 import * as api form '' api.default.show()

动态使用

使用import函数可以动态导入,按照需求加载 let sex = import('').then(res => { console.log(res.xxx) })