angular - ngrx 4 中的服务器支持撤消/重做

标签 angular ngrx ngrx-store ngrx-store-4.0

目标:

在 Angular 4 项目中通过服务器端支持实现撤消/重做功能。例如,从服务器删除项目必须可以通过相应的(创建)操作来撤消。

有一个组件可以实现此目的:https://github.com/PowToon/redux-undo-redo

我正在尝试使用 ngrx-store 4 移植该组件。

问题:

我正在尝试将中间件转换为元 reducer ,但这似乎不是一件容易的事。如何在 ngrx meta-reducer 中调用 dispatch ?如果不能,如何实现相应的功能?

中间件: https://github.com/PowToon/redux-undo-redo/blob/master/src/createUndoMiddleware.js

或者如果有更简单的方法来实现我的目标,那会是什么?

最佳答案

我们正在尝试完成非常相似的事情,并且我们正在使用 ngrx-effects 。我们使用一个效果来调用 API 来完成原始操作,并添加第二个效果来将原始操作的逆操作存储在状态中。这样我们就可以访问原始操作的有效负载,并且可以根据需要访问状态的任何部分。

关于angular - ngrx 4 中的服务器支持撤消/重做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47413563/

相关文章:

javascript - 如何修复 JavaScript 库的输入错误?

angular - 从依赖网络的 Web 应用程序到独立于网络的 Web 应用程序

angular - Resolver 或 Guard - 更适合使用 ngrx 获取数据

Angular - 如何在注销时清除在服务构造函数上实例化的数据?

javascript - 非常简单 : requiring images in webpack and Angular 2

angular - 如何访问控制台中的 ngrx 存储?

angular6 - 当我在获取数据后调度操作时无限循环/订阅

security - Angular 2 : sanitizing HTML stripped some content with div id - this is bug or feature?

typescript - NgRx:如何声明由 Action 创建者创建的 Action 的显式类型?