1
私はReact/Reduxを学習しており、その状態に従っています。React/Redux - 新しい状態に配列の状態を設定します。
default_state = [
{
id: 1,
name: "Smith"
},
{
id: 2,
name: "Matt"
},
{
id: 3,
name: "Tom"
}
];
さて、私の減速で、私は配列の2番目のオブジェクトの名前を言って上書きする:オブジェクトは、JavaScriptのオブジェクトを含む配列です。どうすればいい?私はこのような何かを思い付いたが、間違っているようだ:
case "SAVE_CHANGES":
state = {...state, { id: 3, name: "Peter"};
は、だから私は、最初に正しいIDを持つオブジェクトを検索し、この名前をオブジェクト上書きします。今はIDと名前の両方を上書きしているだけで、明らかに動作しません。
私の以前のアイデアは、このでした:
state = {...state, state[2].name="Peter"};
しかし、これも動作しません。何かアドバイス?
を変更したい項目を複製し、配列のクローンを作成する必要があります。また、 'const'を作成して上書きすることはできますか?これを 'let 'に変更しましたが、構文エラーが発生しました:'ファイルの解析中に予期しないトークン(56:22): –
これはあなたがBabelで有効にした段階によって異なります。ステージ2を有効にすると、構文が機能します。私はconst変数を上書きしていません。私はそれが指しているオブジェクトに突然変異を起こしています。 – Brandon