2017-09-17 16 views
2

JavaScriptのmap機能で各項目のシーケンス番号を取得する方法はありますか?例えばJavaScriptのマップ関数でシーケンス番号を取得する方法は?

、Iは5つの項目の配列を有し、私の次のコードでコンポーネントを反応させるために各アイテムのシーケンス番号を渡したい:

{toDoList.map(item => <ToDoItem key={item.id} sequenceNumber={???} data={item} />)} 

答えて

0

は、マップ内の関数をコールバックするための3つのパラメータは、要素、インデックス、配列そのものなので、あなただけのコールバック関数の二番目の引数を与える必要が

var arr = [1,2,3,4]; 
 

 
arr.map((num, index) => console.log(num + " " + index));

ので、あなたのケースでは、それ:のような

{toDoList.map((item, index) => <ToDoItem key={item.id} sequenceNumber={index} data={item} />)} 
0

これはコールバックの2番目のパラメータです。

[101,102,103].map((a,b)=>b) 

与える[0,1,2]

3

あなたが.mapを使用する場合は、あなたの関数は、実際には3つのパラメータに渡される:配列、それのインデックス、および配列自体のアイテム。 See more here.

だからインデックスは、あなたのシーケンス番号のために働く必要があります。

{toDoList.map((item, index) => 
    <ToDoItem key={item.id} sequenceNumber={index} data={item} />)} 
関連する問題