Ngrx:如何将simpe存储模式与实体状态结合起来?

最近很抱歉,如果它与某人的问题重复。但是我找不到解决问题的方法。

我遇到了一个问题,我想使ngrx/entity所提供的商店状态有些复杂,但是我不知道如何正确地进行设置。

以下是我现在使用的减速器模型:

export interface State extends EntityState<BagParametres> {
    SimpleBag: BagParametres;
}

export const adapter: EntityAdapter<BagParametres> = createEntityAdapter<BagParametres>({
    selectId: (params: BagParametres) => params.id
});

export const initialState: State = adapter.getInitialState({
    SimpleBag: defaultParams,RareBags: {
        ids: [],entities: []
    }
});

那我期望什么商店?

{
    SimpleBag: {
        //params
    },RareBags: {
        ids: [2,3,4 //,...etc],entities: [
            { id: 2 //,etc params },{ id: 3 //,{ id: 4 //,etc params }
            // ... and so on
        ]
    }
}

我要去哪家商店

{
    SimpleBag: {
        id: 1
        // etc params
    },entities: []
    },ids: [2,entities: [
        { id: 2 //,etc params }
        // ... and so on
    ]

}

如何将ID和实体放在RareBags内?

pizi530 回答:Ngrx:如何将simpe存储模式与实体状态结合起来?

您正在混淆状态。您想要的是2种不同的实体存储。

export interface State {
    simpleBag: BagParametres;
    rareBag: RareBagState
}

export interface RareBagState extends EntityState<BagParametres> {}

export const rareAdapter: EntityAdapter<BagParametres> = createEntityAdapter<BagParametres>({
    selectId: (params: BagParametres) => params.id
});

export const initialState: State = {
    simpleBag: defaultParams,rareBag: rareAdapter.getInitialState({})
};
本文链接:https://www.f2er.com/3152666.html

大家都在问