我试图确定这两者之间是否有任何重大差异,除了能够通过以下方式导入export default:
export default
import myItem from 'myItem';
并使用export const我可以做到:
export const
import { myItem } from 'myItem';
除此之外还有什么不同和/或用例吗?
这是命名导出与默认导出。export const是一个命名的导出,它导出一个或多个 const 声明。
强调一下:这里重要的是export关键字 asconst用于声明一个或多个 const 声明。export也可以应用于其他声明,例如类或函数声明。
export
const
默认导出 (export default)
每个文件可以有一个默认导出。当您导入时,您必须指定一个名称并像这样导入:
import MyDefaultExport from "./MyFileWithADefaultExport";
你可以给它任何你喜欢的名字。
命名导出 (export)
使用命名导出,每个文件可以有多个命名导出。然后导入您想要用大括号括起来的特定导出:
// ex. importing multiple exports: import { MyClass, MyOtherClass } from "./MyClass"; // ex. giving a named import a different name by using "as": import { MyClass2 as MyClass2Alias } from "./MyClass2"; // use MyClass, MyOtherClass, and MyClass2Alias here
或者可以在同一语句中使用默认值和命名导入:
import MyDefaultExport, { MyClass, MyOtherClass} from "./MyClass";
命名空间导入
也可以从对象的文件中导入所有内容:
import * as MyClasses from "./MyClass"; // use MyClasses.MyClass, MyClasses.MyOtherClass and MyClasses.default here
笔记
default
import { default as MyDefaultExport } from "./MyFileWithADefaultExport";