浅谈:export default与export const的区别
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';// 导出默认模块