React/Redux调用useGetCryptoNewsQuery报TypeError错误求助
错误修复方案
核心错误点:API导入路径错误
你在cryptoNewsApi.js中导入createApi、fetchBaseQuery的路径有误,非React专属路径下的createApi不会自动生成对应的React查询Hook,会导致导出的useGetCryptoNewsQuery实际为undefined,调用时就会触发TypeError: Object(...) is not a function报错。
将cryptoNewsApi.js第一行的导入语句替换为以下内容即可:
import { createApi, fetchBaseQuery } from "@reduxjs/toolkit/query/react";
附加检查项
如果修改导入路径后仍有报错,需核对以下Redux配置是否正确:
- 已在全局store中注册cryptoNewsApi的reducer和中间件,示例配置如下:
import { configureStore } from '@reduxjs/toolkit'; import { cryptoNewsApi } from '../services/cryptoNewsApi'; export default configureStore({ reducer: { [cryptoNewsApi.reducerPath]: cryptoNewsApi.reducer, }, middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat(cryptoNewsApi.middleware), });
- 项目根组件已用
react-redux的Provider包裹并传入上述store - 已正确安装
@reduxjs/toolkit、react-redux依赖,版本无兼容问题
内容的提问来源于stack exchange,提问作者npkp
相关产品推荐
相关产品推荐

