我想问最后一句话是什么意思和做(导出默认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;
当前回答
简单地说,导出意味着让我们编写的脚本被另一个脚本使用。如果我们说导出,我们的意思是任何模块都可以通过导入这个脚本来使用它。
其他回答
Export default用于从脚本文件中导出单个类、函数或原语。
导出还可以写成
export default class HelloWorld extends React.Component {
render() {
return <p>Hello, world!</p>;
}
}
你也可以把它写成函数分量
export default function HelloWorld() {
return <p>Hello, world!</p>
}
用于在另一个脚本文件中导入此函数
import HelloWorld from './HelloWorld';
你不一定要把它导入HelloWorld,你可以给它任何名字,因为它是一个默认的导出
稍微讲一下出口
顾名思义,它用于从脚本文件或模块中导出函数、对象、类或表达式
Utiliites.js
export function cube(x) {
return x * x * x;
}
export const foo = Math.PI + Math.SQRT2;
这可以导入并作为
App.js
import { cube, foo } from 'Utilities';
console.log(cube(3)); // 27
console.log(foo); // 4.555806215962888
Or
import * as utilities from 'Utilities';
console.log(utilities.cube(3)); // 27
console.log(utilities.foo); // 4.555806215962888
当使用export default时,这要简单得多。脚本文件只导出一件东西。 cube.js
export default function cube(x) {
return x * x * x;
};
并用作 App.js
import Cube from 'cube';
console.log(Cube(3)); // 27
简单地说,导出意味着让我们编写的脚本被另一个脚本使用。如果我们说导出,我们的意思是任何模块都可以通过导入这个脚本来使用它。
对于默认导出的最简单理解是
导出是ES6的特性,用于导出一个模块(文件),并在其他模块(文件)中使用它。
默认导出:
如果您只想从文件(模块)中导出一个对象(变量、函数、类),则默认导出是约定。 每个文件只能有一个默认导出,但不限于一个导出(Named export)。 当导入默认导出对象时,我们也可以重命名它。
导出或命名导出:
它用于导出同名的对象(变量、函数、类)。 它用于从一个文件中导出多个对象。 在另一个文件中导入它时不能重命名,它必须具有与导出时相同的名称,但我们可以使用as操作符创建它的别名。
在React, Vue和许多其他框架中,Export主要用于导出可重用的组件,以创建基于模块化的应用程序。
(我的回答可能有点草率。如果有人能改进它并删掉这条评论,我会很感激的。)这里有很多好答案。那么为什么要再写一篇呢?任何与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