为什么 `return` 和 `(` 之间的换行符会破坏代码? [英] Why a newline between `return` and `(` breaks the code?
本文介绍了为什么 `return` 和 `(` 之间的换行符会破坏代码?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
基于我的问题的解决方案:setState触发并渲染方法被击中,但没有重新渲染
Based on the solution of my question: setState fires and render method gets hit, but nothing rerenders
如果 return
和 (
之间有 NO 换行符,代码有效,否则失败.
Code works if there is NO newline between return
and the (
, and fails otherwise.
示例:
这有效:
render()
{
return (
<View >
<ListView dataSource={this.state.beers_ds} renderRow={renderRow.bind(this)} />
</View>
);
}
但这失败了:
render()
{
return
(
<View >
<ListView dataSource={this.state.beers_ds} renderRow={renderRow.bind(this)} />
</View>
);
}
为什么?
推荐答案
似乎自动分号插入可能会让您大吃一惊.我相信 javascript 会自动在 return
语句的末尾插入一个 ;
.
Seems like Automatic Semicolon Insertion might be biting you in the butt. I believe javascript will insert a ;
at the end of a return
statement automatically.
当返回值位于新行时,为什么 Javascript 返回语句不起作用?
这篇关于为什么 `return` 和 `(` 之间的换行符会破坏代码?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文