编程语言
首页 > 编程语言> > 在ES6中javascript – `export const`与`export default`

在ES6中javascript – `export const`与`export default`

作者:互联网

我试图确定这两者之间是否存在任何重大差异,除了能够通过以下方式导出导出默认值:

import myItem from 'myItem';

并使用导出const我可以做:

import { myItem } from 'myItem';

我想知道除此之外是否存在任何差异和/或用例.

解决方法:

它是命名导出与默认导出. export const是一个命名导出,用于导出const声明.

要强调:这里重要的是export关键字,因为const用于声明一个const声明或声明. export也可以应用于其他声明,例如类或函数声明.

默认导出(导出默认值)

每个文件可以有一个默认导出.导入时,您必须指定名称并导入,如下所示:

import MyDefaultExport from "./MyFileWithADefaultExport";

你可以给这个你喜欢的名字.

命名出口(出口)

使用命名导出,每个文件可以有多个命名导出.然后导入您想要在大括号中包围的特定导出:

// 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

笔记

>语法有利于默认导出,因为它们的用例更常见(See the discussion here).
>默认导出实际上是名为default的命名导出,因此您可以使用命名导入导入它:

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

标签:es6-modules,javascript,ecmascript-6
来源: https://codeday.me/bug/20190911/1804298.html