簡體   English   中英

如何修復在 redux 中兩次更新相同的信息?

[英]How to fix updating the same info twice in redux?

我正在嘗試重構我的減速器,動作的代碼。 問題是一個 state 依賴於另一個,所以一個 state 被更新,然后另一個必須接收相同的信息,但它會更新它。 這是演示 文件夾是 src/reducer。

我曾試圖將各州分開,但這給我帶來了更多麻煩。

Fe 我有兩個狀態: board 和 currentBoard board 中發生了什么:

case 'ADD_CARD':
  const { list } = action.payload
    return [
      ...boards.slice(0, list.boardId),
      updateCards(currentBoard, action.payload),
      ...boards.slice(list.boardId + 1)
    ]

currentBoard 中會發生什么:

case 'ADD_CARD':
  return updateCards(currentBoard, action.payload)

如何重寫我的代碼以使其更好? 我希望它至少會更新一次。

board 中的操作 'ADD_CARD' 已經調用了updateCards(currentBoard, action.payload),所以只需從currentBoard中刪除ADD_CARD

此外,您可能想更改boardsADD_CARD操作的代碼(它不干凈):

case 'ADD_CARD':
  const { list } = action.payload;
  const newBoard = updateCards(currentBoard, action.payload);
  list.splice(list.boardId, 0, newBoard);
  return list;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM