如何使用createAEntityAdapter设置initialState



我有恒定的数据,我想设置初始状态。我正在使用createEntityAdapter。如何定义initialState

import { createSlice, createEntityAdapter } from "@reduxjs/toolkit";
export const cardAdaptor = createEntityAdapter();
const cardSlice = createSlice({
name: "cards",
initialState: {},
reducers: {}
});
export default cardSlice.reducer;

实体适配器有一个getInitialState函数,它用来创建一个空的初始状态。如果调用该函数时没有值,则初始状态为ids的空数组和entities的空字典,即

cardAdapter.getInitialState()

创建

{
ids: [],
entities: {}
}

您可以通过向getInitialState传递参数来添加任意初始数据。您提供一个对象,这些属性将包含在您的状态的顶层。

cardAdapter.getInitialState({
someProperty: 0,
otherProperty: []
}));

创建

{
ids: [],
entities: {},
someProperty: 0,
otherProperty: []
}

也可以用这种方式覆盖初始的idsentities属性。我建议不要这样做,除非你确定你知道你在做什么,因为你可能有没有实体的id,反之亦然。

相关内容

  • 没有找到相关文章

最新更新