位置情報を保存するスライスがあります。 set と setLocation という 2 つの関数を宣言しました。 set 関数は位置の配列を受け入れ、setLocation 関数は位置を設定する必要があります。
これは、location 変数に保存されているサンプル データです:
const places = [{name: '1', Index: 0}, {name: '2', Index: 1}];;
これは私のスライス コードです:
import { createSlice } from '@reduxjs/toolkit' const の場所をエクスポートSlice = createSlice({ 名前: '場所'、 初期状態: { 場所: null、 }、 レデューサ: { set: (状態、場所) => { 状態.場所 = 場所.ペイロード }、 setLocation: (状態, 場所) => { 状態.場所[場所.インデックス] = 場所 } }、 }) import const { set, setLocation } = locationSlice.actions デフォルトの場所をエクスポートSlice.reducer
set(locations) の呼び出しは有効です。ただし、location が location 配列内の値である場合、setLocation(location) を使用して location 配列内の 1 つの位置を置き換えることはできません。 setLocation() 関数で console.log(state.location) を使用すると、いくつかのプロキシ オブジェクトが取得されます。
setLocation
操作で
Proxyが発生する問題は、特定の場所を検索するときに
location.indexを渡すためですが、
location.payload.indexを渡す必要があります。
リーリー