You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Redux RTK API Slice中能否从其他Reducer分发Action?

Redux RTK API Slice中在query的onSuccess里分发其他Reducer的Action是否可行?

完全可以这么做,你给出的示例写法是正确的。

在Redux Toolkit通过createApi创建的API Slice中,每个query或mutation都支持onSuccess这类生命周期回调函数。回调参数里的dispatch就是Redux store的dispatch方法,你可以用它分发任何已定义的action——不管这个action属于哪个reducer。

正确的代码示例如下:

getSomething: builder.query<SomeProps, void>({
    query: () => ({
        url: "...",
        headers: {
            'Content-Type': 'application/json',
        }
    }),
    onSuccess: (response: SomeProps, {dispatch}) => {
        dispatch(someActionFromAnotherReducer(response))
    }
})

除了onSuccess,像onError、onQueryStarted这类回调也能获取到dispatch,你可以根据业务需求在不同请求阶段处理action分发。需要注意的是,要确保你已经正确导入了要分发的action,且对应的reducer已经注册到Redux store中。

内容的提问来源于stack exchange,提问作者four-eyes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 07:22:29