redux-给出原始文档的工具包--
import { configureStore } from '@reduxjs/toolkit'
// Or from '@reduxjs/toolkit/query/react'
import { setupListeners } from '@reduxjs/toolkit/query'
import { pokemonApi } from './services/pokemon'
export const store = configureStore({
reducer: {
// Add the generated reducer as a specific top-level slice
[pokemonApi.reducerPath]: pokemonApi.reducer,
},
// Adding the api middleware enables caching, invalidation, polling,
// and other useful features of `rtk-query`.
middleware: (getDefaultMiddleware) =>
getDefaultMiddleware().concat(pokemonApi.middleware),
})
// optional, but required for refetchOnFocus/refetchOnReconnect behaviors
// see `setupListeners` docs - takes an optional callback as the 2nd arg for customization
setupListeners(store.dispatch)我的代码
import { configureStore } from '@reduxjs/toolkit'
import newletterReducer from '../slicers/newletter/newsletterSlicer'
import { setupListeners } from '@reduxjs/toolkit/query'
import { getmoviesdetails } from '../slicers/service/getmoviedetails'
import { authService } from '../slicers/service/auth/authService'
export const store = configureStore({
reducer: {
newsletter: newletterReducer,
[getmoviesdetails.reducerPath]: getmoviesdetails.reducer,
[authService.reducerPath]: authService.reducer,
},
middleware:
(getdefaultMiddleware) =>
{return getdefaultMiddleware().concat(getmoviesdetails.middleware)
,getdefaultMiddleware().concat(authService.middleware)}
})
setupListeners(store.dispatch)他们给出了错误buildInitiate.ts:248警告:中间件的RTK-查询API在reducerPath上"getmoviedetails“尚未添加到商店中。诸如自动缓存收集、自动重取等功能将不可用。
发布于 2022-06-16 09:37:38
你可以这样做:
middleware:
(getdefaultMiddleware) =>
getdefaultMiddleware()
.concat([
getmoviesdetails.middleware,
authService.middleware
])基本上,您可以在一个数组中传递所有中间件。
发布于 2022-05-30 13:17:55
getdefaultMiddleware().concat(getmoviesdetails.middleware).concat(authService.middleware)但是您实际上应该只有一个api,除非这些api是完全独立的api,永远不会有任何重叠的数据。
引用文档的话:
通常情况下,应用程序需要与之通信的每个基本URL只有一个API切片。例如,如果您的站点同时从/ API / post和/api/user获取数据,那么您将有一个以/api/作为基本URL的api切片,以及针对posts和用户的独立端点定义。这允许您通过定义跨端点的标记关系来有效地利用自动重取。出于可维护性的目的,您可能希望将端点定义拆分到多个文件中,同时仍然维护一个包含所有这些端点的API切片。有关如何使用injectEndpoints属性将API端点从其他文件注入到单个API片定义.
,请参见代码拆分。
https://stackoverflow.com/questions/72434804
复制相似问题