根据我的问题解决方案:setState fires and render method gets hit, but nothing rerenders
如果return
和(
之间有否换行符,则代码有效,否则无效。
示例:
这有效:
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>
);
}
为什么?
答案 0 :(得分:1)
似乎自动分号插入可能会咬你的屁股。我相信javascript会自动在;
语句的末尾插入return
。
Why doesn't a Javascript return statement work when the return value is on a new line?
答案 1 :(得分:1)
这只是JS语法的问题。分号自动添加,因此编译器会处理
return
( sth )
作为
return;
( sth )