首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对React reducers使用TypeScript

对React reducers使用TypeScript
EN

Stack Overflow用户
提问于 2021-01-25 17:21:14
回答 1查看 52关注 0票数 0

我有这样一段代码,其中我连接了我所有的减速器:

代码语言:javascript
复制
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我的组件我做:

代码语言:javascript
复制
const selector = useSelector((s: RootState) => s);

我还从选择器中获取数据:

代码语言:javascript
复制
const httpResponse = selector.updateUserReducer.response;

问题是,当我将鼠标悬停在updateUserReducer上时,会收到来自TypeScript的错误

代码语言:javascript
复制
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: { ...; }; ...'.

为什么会出现这种情况,如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2021-01-26 17:56:25

这是how to use typescript with redux and react-redux上的redux文档

这段代码很好,我想问题出在你的reducer的返回类型上。一步一步地检查文档,找出确切的问题。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65881925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档