为什么 `return` 和 `(` 之间的换行符会破坏代码? [英] Why a newline between `return` and `(` breaks the code?

查看:81
本文介绍了为什么 `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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆