Immutable.jsを使用して、ネストされたマップに新しいキーと値のペアを追加する方法

モリッツ

別のマップにネストされているマップに新しいキーと値のペアを追加したいと思います。キーがすでに存在する場合は、置き換える必要があります。

mergeDeepIn()でうまくいくと思いましたが、「無効なkeyPath」エラーが発生します。

状態は次のようになります。

{
   "requests":{
      "1":{
         "title":"I have a question",
         "customerId":2,
         "messages":{
            "222":{
               "text":"Hello!",
               "senderId":1,
            },
         },
        ...
      },
      ...
   },
}

「リクエスト」と「メッセージ」は不変のマップです。

私はこれを試しました:

const message = fromJS({
  "5": {
    text: "test",
  },
})
state.mergeDeepIn(['requests', 1, 'messages'], message)

メッセージは「メッセージ」マップに追加される必要があります。

不変性はデータ構造のプロパティであり、次のことを意味します。データ構造が作成された後は、二度と変更されることはありません。から/への値の追加または置換は、を変更するMapことを意味しますMap。これは、immutable-jsが防止しようとするものです。

あなたができることはMap、あなたの既存のものから新しいもの作ることです

const {Map} = require('immutable');
m = Map({a:1});

Map({...m.toJSON(), b:2}) // Map { "a": 1, "b": 2 }
Map({...m.toJSON(), a:2}) // Map { "a": 2 }
m.set('a', 2) // Map { "a": 2 } , creates a new map same as line above

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

mergeDeepIn()を使用して、immutable.jsのリストに新しいアイテムをプッシュします

分類Dev

Immutable.Js-マップに新しいプロパティを追加します

分類Dev

Immutable.jsでネストされた値を取得する

分類Dev

Immutable.jsは、マップの値の複数のキーを更新します

分類Dev

immutable.js によって作成されたリストからすべての値を取得する方法は?

分類Dev

Immutable.js マップ値に char が含まれているかどうかを確認します

分類Dev

ネストされたすべてのオブジェクトの値を変更するImmutable.js

分類Dev

Immutable.js - lazy sequence

分類Dev

Immutable.jsマップ:値からキーを見つける

分類Dev

フローを使用してImmutable.jsマップシェイプを記述する方法

分類Dev

フローを使用してImmutable.jsマップシェイプを記述する方法

分類Dev

フローを使用してImmutable.jsマップシェイプを記述する方法

分類Dev

ドット表記を使用してImmutable.jsレコードにアクセスする

分類Dev

immutable.jsは配列(リスト)にマップし、プロパティを追加します

分類Dev

immutable.jsリストを更新または追加する方法

分類Dev

JuliaでImmutableを使用しているときに、エラー「式の終了後の追加トークン「学校」」

分類Dev

immutable.jsを使用してReact / Reduxのディープオブジェクト値の状態を更新する

分類Dev

コンポーネントの状態としてImmutable.jsレコードを使用する

分類Dev

Immutable.jsでIDごとにリストをマージする方法は?

分類Dev

immutable.js マップがデータを保持しない

分類Dev

Immutable.jsを使用したNGRX

分類Dev

Immutable.jsのネストされたレコードの解析

分類Dev

immutable.jsはマップ/ハッシュからキーを取得します

分類Dev

ReduxでImmutable.jsを使用する方法

分類Dev

Immutable.jsを使用してReactの配列内のオブジェクトにアクセスする

分類Dev

Immutable.jsでGroupByを実行し、グループ化されたリストの最初の値を返します

分類Dev

Immutable jsを使用して、不変オブジェクトのこの配列の値を更新するためのより良い方法はありますか?

分類Dev

redux-formとimmutable.js

分類Dev

Immutable.jsの怠惰なconcat?

Related 関連記事

  1. 1

    mergeDeepIn()を使用して、immutable.jsのリストに新しいアイテムをプッシュします

  2. 2

    Immutable.Js-マップに新しいプロパティを追加します

  3. 3

    Immutable.jsでネストされた値を取得する

  4. 4

    Immutable.jsは、マップの値の複数のキーを更新します

  5. 5

    immutable.js によって作成されたリストからすべての値を取得する方法は?

  6. 6

    Immutable.js マップ値に char が含まれているかどうかを確認します

  7. 7

    ネストされたすべてのオブジェクトの値を変更するImmutable.js

  8. 8

    Immutable.js - lazy sequence

  9. 9

    Immutable.jsマップ:値からキーを見つける

  10. 10

    フローを使用してImmutable.jsマップシェイプを記述する方法

  11. 11

    フローを使用してImmutable.jsマップシェイプを記述する方法

  12. 12

    フローを使用してImmutable.jsマップシェイプを記述する方法

  13. 13

    ドット表記を使用してImmutable.jsレコードにアクセスする

  14. 14

    immutable.jsは配列(リスト)にマップし、プロパティを追加します

  15. 15

    immutable.jsリストを更新または追加する方法

  16. 16

    JuliaでImmutableを使用しているときに、エラー「式の終了後の追加トークン「学校」」

  17. 17

    immutable.jsを使用してReact / Reduxのディープオブジェクト値の状態を更新する

  18. 18

    コンポーネントの状態としてImmutable.jsレコードを使用する

  19. 19

    Immutable.jsでIDごとにリストをマージする方法は?

  20. 20

    immutable.js マップがデータを保持しない

  21. 21

    Immutable.jsを使用したNGRX

  22. 22

    Immutable.jsのネストされたレコードの解析

  23. 23

    immutable.jsはマップ/ハッシュからキーを取得します

  24. 24

    ReduxでImmutable.jsを使用する方法

  25. 25

    Immutable.jsを使用してReactの配列内のオブジェクトにアクセスする

  26. 26

    Immutable.jsでGroupByを実行し、グループ化されたリストの最初の値を返します

  27. 27

    Immutable jsを使用して、不変オブジェクトのこの配列の値を更新するためのより良い方法はありますか?

  28. 28

    redux-formとimmutable.js

  29. 29

    Immutable.jsの怠惰なconcat?

ホットタグ

アーカイブ