我想问最后一句话是什么意思和做(导出默认HelloWorld;),但我找不到任何教程。
// hello-world.jsx
import React from 'react';
class HelloWorld extends React.Component {
render() {
return <p>Hello, world!</p>;
}
}
export default HelloWorld;
我想问最后一句话是什么意思和做(导出默认HelloWorld;),但我找不到任何教程。
// hello-world.jsx
import React from 'react';
class HelloWorld extends React.Component {
render() {
return <p>Hello, world!</p>;
}
}
export default HelloWorld;
当前回答
(我的回答可能有点草率。如果有人能改进它并删掉这条评论,我会很感激的。)这里有很多好答案。那么为什么要再写一篇呢?任何与API有关的东西都让新手们不知所措,有无尽的选择。实际上,只有少数几个是经常使用的。这是针对一般情况的。全面的细节可以在这里找到MDN导出。
大多数情况下,'export default'的使用就像它在问题中一样。注意,每个文件只能有一个导出默认值[export default HelloWorld] 这使得HelloWorld()在其他使用命令导入它的文件中可见
import HelloWorld from 'hello-world';
HelloWorld() // prints [Hello, world!] in the browser
我见过一个让新手感到困惑的变化——因为只能有一个导出默认值,我们可以在导入文件中任意调用它。所以下面的代码也是正确的:
import abracadabra from 'hello-world';
abracadabra() // prints [Hello, world!] in the browser
其他回答
简单地说,导出意味着让我们编写的脚本被另一个脚本使用。如果我们说导出,我们的意思是任何模块都可以通过导入这个脚本来使用它。
〇简单地说
export语句用于创建JavaScript模块 从模块导出函数、对象或基元值 其他程序可以通过import语句使用它们。
这里有一个链接可以让你更清楚地了解:MDN Web Docs
对于默认导出的最简单理解是
导出是ES6的特性,用于导出一个模块(文件),并在其他模块(文件)中使用它。
默认导出:
如果您只想从文件(模块)中导出一个对象(变量、函数、类),则默认导出是约定。 每个文件只能有一个默认导出,但不限于一个导出(Named export)。 当导入默认导出对象时,我们也可以重命名它。
导出或命名导出:
它用于导出同名的对象(变量、函数、类)。 它用于从一个文件中导出多个对象。 在另一个文件中导入它时不能重命名,它必须具有与导出时相同的名称,但我们可以使用as操作符创建它的别名。
在React, Vue和许多其他框架中,Export主要用于导出可重用的组件,以创建基于模块化的应用程序。
导出默认的HelloWorld;和import,例如import React from ' React '是ES6模块系统的一部分。
模块是一个自包含的单元,它可以使用导出向其他模块公开资产,并使用导入从其他模块获取资产。
在你的代码中:
import React from 'react'; // get the React object from the react module
class HelloWorld extends React.Component {
render() {
return <p>Hello, world!</p>;
}
}
export default HelloWorld; // expose the HelloWorld component to other modules
在ES6中有两种类型的导出:
命名导出-例如,导出函数func(){}是一个命名导出,其名称为func。可以使用import {exportName}从'module';导入命名模块。在这种情况下,导入的名称应该与导出的名称相同。要在示例中导入func,你必须使用import {func} from 'module';。一个模块中可以有多个命名导出。
默认export -是将从模块导入的值,如果你使用简单的import语句import X from 'module'。X是将在本地赋给包含该值的变量的名称,它不需要像origin export那样命名。只能有一个默认导出。
一个模块可以同时包含命名导出和默认导出,并且可以使用import defaultExport、{namedExport1、namedExport3等方法将它们一起导入……} from 'module';。
(我的回答可能有点草率。如果有人能改进它并删掉这条评论,我会很感激的。)这里有很多好答案。那么为什么要再写一篇呢?任何与API有关的东西都让新手们不知所措,有无尽的选择。实际上,只有少数几个是经常使用的。这是针对一般情况的。全面的细节可以在这里找到MDN导出。
大多数情况下,'export default'的使用就像它在问题中一样。注意,每个文件只能有一个导出默认值[export default HelloWorld] 这使得HelloWorld()在其他使用命令导入它的文件中可见
import HelloWorld from 'hello-world';
HelloWorld() // prints [Hello, world!] in the browser
我见过一个让新手感到困惑的变化——因为只能有一个导出默认值,我们可以在导入文件中任意调用它。所以下面的代码也是正确的:
import abracadabra from 'hello-world';
abracadabra() // prints [Hello, world!] in the browser