我在向代码添加额外的行时遇到错误(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)
))
))
))
由于
答案 0 :(得分:1)
因为你在这里使用两个表达式:
condition? i++ (<Task ..../>) : null;
将它们包裹在()
中,像这样写:
condition? (i++, <Task ..../>) : null;
首先它会增加i的值,然后返回Task组件。
检查MDN Doc以获取有关三元运算符的更多详细信息。
检查此代码段:
var a = 1;
var b = true? (a++, a): 0;
console.log('b', b);
&#13;