首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解在ES6中导出圆括号函数

理解在ES6中导出圆括号函数
EN

Stack Overflow用户
提问于 2017-08-27 18:42:50
回答 2查看 355关注 0票数 1

我试图理解以下出口声明:

代码语言:javascript
复制
export default (
    <Route path="/" component={App}>
        <IndexRoute component={HomePage} />
        <Route path="about" component={AboutPage}/>
    </Route>
);

根据定义,导出语句用于导出函数、对象或基元值。

不同句法

导出{ name1,name2,…,nameN };导出{ variable1作为name1,variable2作为name2,…,nameN };导出name1,name2,…,nameN;//也是var,函数导出让name1 =…,name2 =…,…,nameN;//也是var,const导出默认表达式;导出默认函数(…){…} //也是类,函数*导出默认函数name1(…){…} // as类,函数*导出{ name1作为默认值,…};从…导出*;输出{ name1,name2,…,nameN }来自…;导出{ import1为name1,import2为name2,…为,nameN }来自…;

在所有可能的替代方案中,我无法说明出口违约( ..);适应。

我猜它会导出一个匿名函数。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-27 19:30:28

这一规则适用于:

代码语言:javascript
复制
export default expression;

(...)grouping operator,它是一个表达式。它只是计算它包含的表达式的结果。你以前肯定见过。例如:

代码语言:javascript
复制
(20 + 1) * 2

有些构造要求在同一行上启动表达式。在下面的示例中,函数返回undefined,因为表达式必须从与return相同的行开始

代码语言:javascript
复制
function foo() {
  return
    21 + 1;
}

console.log(foo());

使用分组运算符,我们可以准确地完成以下操作:在同一行上启动表达式,但将主部分放在下一行,原因如下:

代码语言:javascript
复制
function foo() {
  return (
    21 + 1
  );
}

console.log(foo());

我不知道在export default的情况下是否需要使用分组操作符,但是找出(运行有和不带它的代码)是很简单的。

即使它不是必需的,它也不会改变表达式的结果。有时,它只是在视觉上更令人愉悦,或者更容易阅读。

票数 5
EN

Stack Overflow用户

发布于 2017-08-27 18:59:59

当您使用export default时,您可以向用户提供import NAME from 'module'的能力,用户可以在其中选择NAME

您决定将导出的内容命名为什么并不重要,因为它是导出的默认名称。

因此,用户可以:

代码语言:javascript
复制
import MyRouter from 'route.js';

而且它将和

代码语言:javascript
复制
import Routing from 'route.js';

你能做到的

代码语言:javascript
复制
export default myvar = (<Route...

它就会和

代码语言:javascript
复制
export default someothervar = (<Route...

请注意,当您谈论命名导出时,它确实很重要。

如果它不是默认的(但命名为值),那么它确实很重要,因为import是按名称完成的:

代码语言:javascript
复制
export {var1, var2, var3}

必须作为

代码语言:javascript
复制
import {var1, var2, var3} from 'myvars.js'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45908200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档