目标:
在 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/