react.js中(someVar)=>和(someVar)=> ...之间有啥区别[重复]

Posted

技术标签:

【中文标题】react.js中(someVar)=>和(someVar)=> ...之间有啥区别[重复]【英文标题】: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 /> )

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

【问题讨论】:

谢谢,知道了。不知道那个语法 【参考方案1】:

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

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

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

【讨论】:

太好了,谢谢!不知道那个缩写语法 我认为称它为“多行”可能会增加混乱。这不是关于行数,而是关于 是一个块的事实 @loganfsmyth 好点。本质上,这只是 JS 设计决策。在其他语言(例如 Groovy)中,这也可以工作,因为函数总是返回最后一条语句的结果。

以上是关于react.js中(someVar)=>和(someVar)=> ...之间有啥区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章

pyhon中方法属性迭代器

__uuidof(someVar) 做啥?

将 someVar+'a string' 传递给 Handlebars.js 助手?

python学习 魔法方法属性和迭代器

20161217py学习笔记:魔法方法/

JavaScript短路仍然引发未定义的错误[重复]