添加i ++时遇到错误js es6 jsx

时间:2017-08-30 13:07:22

标签: reactjs ecmascript-6 jsx

我在向代码添加额外的行时遇到错误(i++),我想知道应该添加代码的位置。

let i = 1;
this.props.client_name.split(",").map((entry0) => (
    this.props.campaign_name.split(",").map((entry1) => (
        this.props.adset_name.split(",").map((entry2) => (
            ( item.client_name.toLowerCase().indexOf(entry0.toLowerCase()) !== -1  && item.campaign_name.toLowerCase().indexOf(entry1.toLowerCase()) !== -1  && item.adsets_name.toLowerCase().indexOf(entry2.toLowerCase()) !== -1    )?
                **i++**
                (<Task key={item._id} id={item.adsets_id} i={key} item={item} date_from={this.state.date_from} date_to={this.state.date_to} campaign_name={this.state.campaign_name} adset_name={this.state.adset_name} />)
            :
                (null)
        ))

    ))
))

由于

1 个答案:

答案 0 :(得分:1)

因为你在这里使用两个表达式:

condition? i++ (<Task ..../>) : null;

将它们包裹在()中,像这样写:

condition? (i++, <Task ..../>) : null;

首先它会增加i的值,然后返回Task组件。

检查MDN Doc以获取有关三元运算符的更多详细信息。

检查此代码段:

&#13;
&#13;
var a = 1;
var b = true? (a++, a): 0;

console.log('b', b);
&#13;
&#13;
&#13;