2

私は次の反応状態を持っています:

state: {
   objectOne: {
      arrayOne: [
         {
            arrayTwo: [
                {
                   value: 'some value'
                }
            ]         
         }
      ]
   }
}

React useContext と useReducer フックを使用しています。私がやりたいことは、arrayTwo にオブジェクトを追加することです。

私がこれまでに試したこと:

「ADD_NEW_OBJECT」タイプのディスパッチ関数を呼び出します。ペイロードは、いくつかのキーと値のペアを含むオブジェクトです。

    dispatchFunction({
       type: 'ADD_NEW_OBJECT', 
       payload: {
          value: {
             a: 'this is the ',
             b: 'object I want to add',
          }
          arrayOneIndex: 0, 
          arrayTwoIndex: 0
       }
    });

これは私のuseReducerのケースステートメントです:

case 'ADD_NEW_OBJECT':
            return {
                ...state,
                objectOne: {
                    ...state.objectOne,
                    arrayOne: [
                        ...state.objectOne.arrayOne,
                        {
                            ...state.objectOne.arrayOne[payload.arrayOneIndex],
                            arrayTwo: [
                                ...state.objectOne.arrayOne[payload.arrayOneIndex].arrayTwo,
                                payload.value
                            ]
                        },
                    ]
                }
            }
4

1 に答える 1