首页 > 技术文章 > 浅谈:export default与export const的区别

meijifu 2020-05-29 23:00 原文

export default与export const的区别

export 用于在JavaScript模块中导出函数,原始值,对象;即导出模块,例如:

export (命名导出)

export {myFunction};  //命名导出函数

export const value=5;   //命名导出原始值

export {object1, object2, ....};   //命名导出对象

命名导出可以导出多个值,但是导入时命名需要与导出命名相同。

每个文件可以有多个命名导出 export const,然后将你要导入的名称用{}(花括号)包住。例如:

// in  module.js

let func1=function(){

....

};

let func2=function(){

...

};

export {func1,func2};

// invoke.js

import {func1, func2} from 'module.js';

// 导入多个导出

import { MyClass, MyOtherClass } from "./MyClass";

 // 使用 as 重命名导入

import { MyClass2 as MyClass2Alias } from "./MyClass2";

// 导入所有

import * as MyClasses from "./MyClass";

 

export default(默认导出)

只能有一个默认导出;导入此类文件(模块)时需要指定一个任何你喜欢的名称即可。

//module.js

export default const val=1;

//invoke.js

import res from 'module.js';

注意:

默认导出实际上就是一个名字为 default 的命名导出,所以也可以像这样导入

import { default as MyDefaultExport } from "./MyFileWithADefaultExport";

 

export  {Name} from ...

从某一个文件中导出模块,多用于模块重定向

export * from '../module.js';

export {default} from '../module.js';// 导出默认模块

推荐阅读