Redux 在nextjs中单击动态路由页面中的任意按钮时重定向到主页
我正在尝试将redux传奇与nextjs集成。为此,我制作了一个简单的计数器来检查它。在正常路由页面(如:Redux 在nextjs中单击动态路由页面中的任意按钮时重定向到主页,redux,react-redux,next.js,redux-saga,Redux,React Redux,Next.js,Redux Saga,我正在尝试将redux传奇与nextjs集成。为此,我制作了一个简单的计数器来检查它。在正常路由页面(如:/test)中一切都进行得很顺利,但是,当我将其用于动态路由页面(如:/test/1)时,它会产生问题 当我在重新加载后第一次单击Add/Minus按钮时,它会将我重定向到主页/,而不会更改计数器状态 以下是我的行动代码: export function setAddCount(val) { return { type: ADD, val, }; } export
/test
)中一切都进行得很顺利,但是,当我将其用于动态路由页面(如:/test/1
)时,它会产生问题
当我在重新加载后第一次单击Add/Minus
按钮时,它会将我重定向到主页/
,而不会更改计数器状态
以下是我的行动代码:
export function setAddCount(val) {
return {
type: ADD,
val,
};
}
export function setMinusCount(val) {
return {
type: MINUS,
val,
};
以下是我的减速机代码:
import produce from 'immer';
import { ADD, MINUS, SELECTED_USER_TAB } from './constants';
export const initialState = {
tabId: '1',
countNo: 0,
};
/* eslint-disable default-case, no-param-reassign */
const courseReducer = (state = initialState, action) =>
produce(state, (draft) => {
switch (action.type) {
case SELECTED_USER_TAB:
console.log(action.tabId);
break;
case ADD:
draft.countNo = draft.countNo + action.val;
break;
case MINUS:
draft.countNo = draft.countNo - action.val;
break;
}
});
export default courseReducer;
以下是组件的代码:
const TestTab = ({ handleAdd, handleMinus, countNo }) => {
useInjectReducer({ key: 'course', reducer });
return (
<div>
<h1>{countNo}</h1>
<button onClick={() => handleAdd(5)}>Add</button>
<button onClick={() => handleMinus(5)}>Minus</button>
</div>
);
};
const mapStateToProps = createStructuredSelector({
countNo: makeSelectCountNo(),
});
function mapDispatchToProps(dispatch) {
return {
handleAdd: (val) => dispatch(setAddCount(val)),
handleMinus: (val) => dispatch(setMinusCount(val)),
};
}
const withConnect = connect(mapStateToProps, mapDispatchToProps);
export default compose(withConnect)(TestTab);
const TestTab=({handleAdd,handleMinus,countNo})=>{
useInjectReducer({key:'course',reducer});
返回(
{countNo}
handleAdd(5)}>添加
handleMinus(5)}>负
);
};
const mapStateToProps=createStructuredSelector({
countNo:makeSelectCountNo(),
});
功能图DispatchToprops(调度){
返回{
handleAdd:(val)=>调度(setAddCount(val)),
handleMinus:(val)=>调度(setMinusCount(val)),
};
}
const withConnect=connect(mapStateToProps、mapDispatchToProps);
导出默认组合(withConnect)(测试选项卡);
我如何解决这个问题?蒂亚