2017-08-30 17 views
0

コードに行を追加するときにエラーが発生しましたが、コードを追加する場所を知りたいと思います。i ++を追加するとエラーが発生するjs es6 jsx

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

ああ、もしあなたがエラーを受け取ったら、あなたが得るエラーを*お知らせください。それを(テキストとして)コピーし、質問本体に貼り付けます。 –

+0

JavaScriptは 'if'のような有用なものをサポートしているので、複数行の条件演算子に頼る必要はありません! –

答えて

1

あなたはここで2つの発現を使用しているので:

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

をこのようにそれを書く、()でそれらをラップ:

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

まずそれが値をインクリメントしますof iを返し、Taskコンポーネントを返します。

3進演算子の詳細は、MDN Docを参照してください。

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

 
console.log('b', b);

関連する問題