如何在 redux 工具包的 reducer 中访问根状态?

How to access root state in a reducer in redux toolkit?

我有一个简单的计数器切片。在增量函数中,我想访问根状态。我该怎么做?

const initialState = {
  value: 1
}

export const counterSlice = createSlice({
  name: "counter",
  initialState,
  reducers: {
    increment: (state) => {
      state.value++
    }
  }
})

一般来说,你不能。 Redux(不仅是工具包)的设计理念是你的 Reducer 应该只依赖于它自己的状态值和动作的内容,没有别的。

如果您真的需要来自另一个状态切片的数据,您可能需要在调用它时将其复制到操作中,但这通常被认为是一个坏主意。

您可能选择的切片太小了。