0 reactjs redux redux-thunk react-redux
我正在开发一个react-with-redux应用程序,我正在使用redux-undo库,随着库的功能的发展,它会监听一系列操作,并在撤消发生时恢复到之前的状态。
场景:我有一个页面,其中将创建/删除列表项,并且每当这些操作发生时都会进行 API 调用。用户可以撤消创建和删除操作。
我想知道是否有任何方法可以知道已调度的最新操作。
例如:如果用户创建一个列表项并单击撤消,我想知道调度的最新操作是创建,以便我可以恢复创建(通过进行 API 调用删除列表项)。
同样,如果用户删除了一个列表项,我想知道最近调度的操作是删除,以便我可以恢复删除(通过进行 API 调用再次创建列表项,从过去的形状中获取详细信息状态并发送已删除列表项的详细信息)
请让我知道是否有任何方法可以实现这一目标?
小智 6
您可以使用store.subscribe,如下所述:
最简单的方法是让减速器只记住最后一个动作:
function lastAction(state = null, action) {
return action;
}
Run Code Online (Sandbox Code Playgroud)
然后你可以使用 store.getState().lastAction ,假设你做了类似的事情
import { combineReducers, createStore } from 'redux';
const rootReducer = combineReducers({
someReducer,
someOtherReducer,
lastAction // <-- use it!
});
const store = createStore(rootReducer);
store.subscribe(() => {
console.log(store.getState().lastAction);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4427 次 |
| 最近记录: |