입력을 변경해서는 안되며 개체를 복제하여 변경해야한다는 것을 알고 있습니다. 나는 redux 스타터 프로젝트에서 사용되는 규칙을 따르고 있었다.
ADD_ITEM: (state, action) => ({
...state,
items: [...state.items, action.payload.value],
lastUpdated: action.payload.date
})
항목을 추가하기 위해-스프레드를 사용하여 배열에 항목을 추가합니다.
내가 사용한 삭제 :
DELETE_ITEM: (state, action) => ({
...state,
items: [...state.items.splice(0, action.payload), ...state.items.splice(1)],
lastUpdated: Date.now()
})
하지만 이것은 입력 상태 객체를 변경하고 있습니다-새 객체를 반환하더라도 이것이 금지되어 있습니까?
items: [...state.items.slice(0, action.payload.value), ...state.items.slice(action.payload.value + 1 )]
입력을 변경하지 않도록 스플 라이스 대신 지금 슬라이스를 사용 하십시오 -이것이 갈 길입니까 아니면 더 간결한 방법이 있습니까?