Подход к Vuex для обновления операций после состояния CRUD - PullRequest
0 голосов
/ 29 сентября 2018

Предположим, у меня есть коллекция книг, полученная с помощью действия Vuex с именем fetchBooks (это действие совершает мутацию SETBOOKS для изменения состояния).

Когда я отправляю действие remove для удалениякнига, у меня есть два варианта:

1) Отправить запрос в API для удаления ресурса, а затем отправить fetchBooks, чтобы перезагрузить список книг.

2) Отправить запрос в APIудалить ресурс, а затем зафиксировать мутацию REMOVE, чтобы вывести книгу из состояния, без каких-либо дополнительных HTTP-запросов.

Первый вариант кажется более простым, я могу использовать ту же технику для добавления / обновления / удаления,с ценой выполнения дополнительного запроса для перезагрузки списка.

Второй вариант дешевле (без дополнительного запроса), но требует больше логики для обработки состояния для каждого случая добавления / обновления / удаления.

Как правильно это сделать?

1 Ответ

0 голосов
/ 01 октября 2018

Я бы выбрал вариант 2. В общей практике "getBooks" может быть огромным массивом, и лучше не запрашивать данные из БД, когда они у вас уже есть локально.

Просто сделайтеУбедитесь, что вы удаляете книгу из блока try catch, поэтому, если удаление не идет в бэкэнд, вы должны предупредить пользователя.

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