【问题标题】:What's is the difference between (someVar) => and (someVar) => {...} in react.js [duplicate]react.js中(someVar)=>和(someVar)=> {...}之间有什么区别[重复]
【发布时间】:2019-01-31 20:15:14
【问题描述】:

React.js 中这两个函数有什么区别?

{muscles.map(group => { <Tab label={group} /> })}

{muscles.map(group => <Tab label={group} /> )}

第二行正常工作,但第一行不呈现值。

【问题讨论】:

  • 谢谢,知道了。不知道那个语法

标签: reactjs ecmascript-6


【解决方案1】:

第一行是一个“多行”箭头函数。 =>右侧的代码是一个块。因此,如果你想返回一个值,你必须明确地返回它:

{muscles.map(group => {
   return <Tab label={group} />;
})}

第二种是=&gt;右边的表达式为函数返回值时的缩写语法。

【讨论】:

  • 太好了,谢谢!不知道那个缩写语法
  • 我认为称它为“多行”可能会增加混乱。这不是关于行数,而是关于{} 是一个块的事实
  • @loganfsmyth 好点。本质上,这只是 JS 设计决策。在其他语言(例如 Groovy)中,这也可以工作,因为函数总是返回最后一条语句的结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-25
  • 2013-02-20
  • 2016-11-30
  • 2021-12-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多