簡體   English   中英

使用redux-saga實現撤消

[英]Implementing Undo with redux-saga

如果從UI觸發了動作removeItem(itemId)則它應首先從狀態中刪除相應的項,然后調用關聯的傳奇。 如果傳奇失敗,則應將狀態重置為其原始狀態。

我想知道是否可以將信息附加到化簡器中的動作有效載荷上,然后使用相同的有效載荷從傳奇中觸發failed動作。 這是假設減速器將始終先被點火(是真的嗎?)

您不應該從減速器內部調度。 還原器的工作是采取當前狀態,一個動作,並從兩者的還原中返回新狀態。 而已。 您嘗試執行的操作可以通過以下策略來完成:

  1. 使用itemId獲取對該項目的引用並將其存儲在本地。
  2. 派遣行動,以根據ID從商店中移除商品。
  3. 呼叫相關的傳奇。
  4. 如果失敗,則將步驟1中的本地存儲項重新添加到存儲中。 如果成功,請從步驟1中刪除對該項目的引用。

暫無
暫無

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

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