2017-09-05 2 views
1

私はこのコードを持っている:地図内のマップをjavascriptで実行しますか?

_renderChannels() { 
    return this.state.channelsData.map(channelData => { 
     return this.state.channelsStreamData.map(channelStreamData => { 
      return <Channel channelData={channelData} channelStreamData={channelStreamData} /> 
     }) 
    }); 
    } 

私はチャネル成分の小道具をマッピングしたいが、唯一の3倍ことになっているとき、チャネル成分が繰り返し9回を返されていますか?ですから、私はchannelDataとchannelStreamDataのデータをマップし、コンポーネントChannelを返したいと思います。私はその中のマップを削除しようとしましたが、返さないときには戻っていません。助けて?

+0

最初の '.map'の直後に、' channelData'を '(channelData、i)'に置き換え、 '' (あなたは3ループの中で3ループを実行して、3x3の要素を与えます) –

+0

@ChrisG申し訳ありません、私は混乱しています。答えをお願いしてもらえますか? –

答えて

1

これはそれを行う必要があります。

_renderChannels() { 
    return this.state.channelsData.map((channelData, i) => <Channel 
     channelData={channelData} 
     channelStreamData={this.state.channelStreamData[i]} 
    />); 
} 

私はi、インデックスパラメータを追加しました。そうすれば、私はthis.state.channelStreamData配列から同じ要素をつかむことができます。

+0

は2つのAjaxリクエストを作成していました。そんなことは考えていない。ありがとうございました –

関連する問題