React-redux - вызывает действие с новым состоянием после состояния обновленного другого действия - PullRequest
0 голосов
/ 24 ноября 2018

У меня есть массив объектов, которые можно обновить, добавив новые элементы в массив с помощью функции действия addNewCategory(category)

После добавления новой категории в массив я хочу перестроить древовидное представление, котороеЯ создал.В древовидном представлении используется объект-хранилище избыточности tree.

Дерево строится внутри функции действия buildCategoriesTree

Вот функции:

export function addNewCategory(category) {
return {
    type: ADD_NEW_CATEGORY,
    payload: category
}
}

export function buildCategoriesTree(feecategories) {

let cats = feecategories.map(x => ({...x}));
let categories = {
    name: 'Kategorien',
    toggled: true,
    children:
        buildTreeFromCategories(cats)
};

return {
    type: GET_CATEGORIES_TREE,
    payload: categories
}
}

Сейчаспроблема: когда я вызываю функцию buildCategoriesTree(...) после функции addNewCategory(...).Дерево не обновляется.Когда я добавляю другую категорию, дерево обновляется с категорией, которую я добавил ранее.Таким образом, он всегда на один шаг позади.

Как это возможно, что вторая функция "ждет", пока магазин не обновится?Я читал о реакции, но не знаю, является ли это правильным решением для такого рода проблем?

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

...