Reactjs 清除Redux撤消历史记录

Reactjs 清除Redux撤消历史记录,reactjs,redux,Reactjs,Redux,我们如何清除redux历史记录?我已经让撤销和重做完美地工作了,但是由于某种原因,当我以相同的格式清除历史记录时(我也在initTypes中尝试过),它没有工作 我的可撤消的减速器: const allReducers = combineReducers({ activeUser: activeUser, activeBrochure: undoable(activeBrochure, { limit: 20, undoType: "BRO

我们如何清除redux历史记录?我已经让撤销和重做完美地工作了,但是由于某种原因,当我以相同的格式清除历史记录时(我也在initTypes中尝试过),它没有工作

我的可撤消的减速器:

    const allReducers = combineReducers({
    activeUser: activeUser,
    activeBrochure: undoable(activeBrochure, {
        limit: 20,
        undoType: "BROCHURE_UNDO", // define a custom action type for this undo action
        redoType: "BROCHURE_REDO", // define a custom action type for this redo action
        clearHistoryType: "CLEAR_BROCHURE_HISTORY"  // [beta only] define custom action type for this clearHistory action
    }),
});
我的行动:

export const rerender = () => { return { type: "RERENDER_BROCHURE", payload: null } }
export const createNewBrochure = () => { return { type: "CREATE_NEW_BROCHURE", payload: null }; }
export const clearBrochureHistory = () => { 
    console.log("Action: Clear Brochure History!");
    return { type: "CLEAR_BROCHURE_HISTORY", payload: ActionCreators.clearHistory }; }
export const brochureUndo = () => { return { type: "BROCHURE_UNDO", payload: null } }
export const brochureRedo = () => { return { type: "BROCHURE_REDO", payload: null } }
部件接线:

    function mapStateToProps(state) {
    return {
        activeUser: state.activeUser,
        activeBrochure: state.activeBrochure.present,
        brochureHistory: state.activeBrochure.past
    }
}
        function matchDispatchToProps(dispatch) {
    return bindActionCreators({
        selectUser: Action.selectUser,
        createNewBrochure: Action.createNewBrochure,
        clearBrochureHistory: Action.clearBrochureHistory,
        selectBrochure: Action.selectBrochure,
        deleteBodyPage: Action.deleteBodyPage,
        brochureUndo: Action.brochureUndo,
        brochureRedo: Action.brochureRedo
    },
        dispatch);
}

export default connect(mapStateToProps, matchDispatchToProps)(NavigationBar)
我的组件JSX:

{

//单击是函数
this.setState(更新(this.state,{askNewBrochure:{$set:false}}));
if(window.location.href.indexOf(“手册编辑器”)<0){
hashHistory.push(“/brochureBuilder”);
}
这个.props.ClearBrochreHistory();

设置
clearHistoryType
应该可以正常工作-确保您使用的是最新的测试版redux undo(
beta9-3
),因为此功能在以前的版本中没有实现。同时确保类型相同(看起来是这样,但您可能希望使用常量而不是普通字符串)。如果它仍然不起作用,如果你能建立一个小的github repo来重现这个问题,那就太好了。顺便说一句:
payload
do做什么?payload是传递给reducer的数据,而type是字符串键应该钩住reducer以根据所说的数据输入创建一个新的状态。我将尝试确保类型,如你所说,是sa我来看看发生了什么设置
clearHistoryType
应该可以正常工作-确保您使用的是最新的测试版redux undo(
beta9-3
),因为此功能在以前的版本中没有实现。还要确保类型相同(看起来是这样,但您可能希望使用常量而不是普通字符串)。如果它仍然不起作用,如果你能建立一个小的github repo来重现这个问题,那就太好了。顺便说一句:
payload
do做什么?payload是传递给reducer的数据,而type是字符串键应该钩住reducer以根据所说的数据输入创建一个新的状态。我将尝试确保类型,如你所说,是sa让我看看会发生什么
        //CLICK YES FUNCTION
        this.setState(update(this.state, { askNewBrochure: { $set: false } }));
        if (window.location.href.indexOf("brochureBuilder") < 0) {
            hashHistory.push("/brochureBuilder");
        }


        this.props.clearBrochureHistory();