web-dev-qa-db-ja.com

immutablejsでマップを反復処理する方法

ImmutablejsMapのObject.entries()に相当するものは何ですか。基本的に、オブジェクトのキーと値のペアを列挙して、プレゼンテーションコンポーネントをレンダリングします

_{
  Object.entries(filteredNetworks)
  .map(([key, value]) =><option key={key} value={key}>{value}</option>)
}
_

さて、filteredNetworksが不変のマップである場合、どうすれば同じことができますか? (.toJS()を使用せずに)

7
selvagsz

に基づく: https://facebook.github.io/immutable-js/docs/#/Iterable/map

{
  filteredNetworks.map(
  (value, key) => <option key={key} value={key}>{value}</option>
  )
}

マッパー関数の引数の順序が変更されていることに注意してください。

エントリシーケンスを使用する別のオプションは、

{
   filteredNetworks.entrySeq().map(
     .map(([key, value]) =><option key={key} value={key}>{value}</option>)
   )
}

https://jsfiddle.net/3r866to3/ をいじる

12
Logicomancer

Iterableメソッドentries()を使用すると役立ちます。

ドキュメントはこちら

1
Sunil B N