我有这样的代码,我连接我所有的减速器:
import { combineReducers } from 'redux';
import { connectRouter } from 'connected-react-router';
import { login } from './login';
import { register } from './register';
import { dashboard } from './dashboard';
import { refreshedToken } from './refreshedToken';
import { updateUserReducer } from './updateUser';
import {History} from "history";
const rootReducer = (history: History) =>
combineReducers({
router: connectRouter(history),
dashboard,
login,
refreshedToken,
register,
updateUserReducer,
});
export default rootReducer;
export type RootState = ReturnType < typeof rootReducer >
I my component I do:
const selector = useSelector((s: RootState) => s);
我也得到数据从选择器:
const httpResponse = selector.updateUserReducer.response;
问题是,我得到一个错误从TypeScript当我悬停在updateUserReducer
:
TS2339: Property 'updateUserReducer' does not exist on type 'Reducer { router: RouterState ; dashboard: { dashboardRequest: boolean; user: any; error: string; dashboardSuccess: boolean; } | { dashboardRequest: boolean; user: {}; error: any; dashboardSuccess: boolean; }; login: { ...; } | { ...; }; refreshedToken: { ...; } | { ...; }; register: { ...; }; ...'.
为什么会出现这种情况,如何解决这个问题?
这里是redux文档关于如何在redux和react-redux中使用typescript
这个代码是好的,我认为问题是与你的减速机的返回类型。一步一步地检查文档,以找到您的确切问题。