Как удалить запись из словаря в моем магазине ngrx? - PullRequest
0 голосов
/ 04 мая 2019

У меня есть магазин ngrx, и я просто хочу удалить пару ключ / значение из моего магазина.Это мое состояние:

export interface State{
items: [
    {
        [itemId: number]: Item;
    }
];
toBeDeleted: [
    {
        [itemId: number]: Item;
    }
];
loading: boolean;
filter: string;}

Я хочу удалить элемент из «toBeDeleted».В моем редукторе у меня просто есть основы, но я не знаю, как удалить запись здесь.Я реализовал обходной путь на данный момент (я думаю).Есть ли способ сделать это в операторе return с помощью Reduce или чего-то подобного?

case Actions.REMOVE_FROM_DELETE_LIST:

        let newToBeDeleted = {};
        for (let key in state.toBeDeleted) {
            if (action.payload.itemId.toString() !== key) {
                let value = state.toBeDeleted[key];
                newToBeDeleted[key] = value;
            }
        }

        return {
            ...state,
            items: {
                ...state.items,
                [action.payload.itemId]: action.payload,
            },
            toBeDeleted: newToBeDeleted
        };

Я был бы признателен за пищу для моих мыслей.

Большое спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...