繁体   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