Я пытаюсь обновить или, скорее, вставить новое значение в словарь под ngrx Entity.
Вот упрощенный вид Entity:
interface Dictionary<T> { [key: number]: T }
export class Item {
id: number;
partsDescriptions: Dictionary<string[]>;
}
export interface ItemsState extends EntityState<Item> {
}
Вот состояние приложения:
export interface AppState {
items: ItemsState
}
В редукторе я пытаюсь сделать следующее:
on(MyActions.partDescriptionsLoaded, (state, action) => {
return {
...state,
items: adapter.updateOne({
id: action.id,
changes: {
...state.items[action.id],
partsDescriptions: {
...(state.items[action.id] && state.items[action.id].partsDescriptions),
[action.partId]: action.partDescriptions
}
}
}, state.items)
}
})
Словарь PartDescriptions не расширяется, он всегда заменяется. У вас есть идеи, как решить эту проблему?