Я работаю над простым приложением, состояние которого управляется с использованием redux и redux-thunk. Приложение поддерживает некоторые базовые операции CRUD для различных классов (например, Items). Результаты этих операций CRUD должны изменить часть состояния избыточности (для отображения новой информации в пользовательском интерфейсе), но также должны быть стойкими к перезапускам приложения.
Какой шаблон лучше всего соответствует этим требованиям?
A - Создайте два редукционных действия, одно для простого обновления локального состояния приложения (например, AddItem
), а второе с использованием thunk (например, CreateItem
), отвечающего за обновление состояния приложения до загрузки, асинхронный доступ к базе данных, отправка AddItem
и повторное переключение состояния загрузки
B - Для каждой операции CRUD обновляйте только локальное состояние и зеркалирование его в базу данных всякий раз, когда жизненный цикл приложения заканчивается.
Я знаю, что вариант B подразумевает множество возможных проблем, но вариант A выглядит не очень хорошо для меня, поскольку он предполагает концептуальное дублирование некоторые действия. Какой вариант лучше? Есть ли другой подход, который я не рассматриваю?
Так заранее