Как обновить состояние после успешного запроса с источниками в alt.js?
Я довольно новичок в alt.js и у меня есть вопрос относительно обновления состояния в обработчике успеха.
Допустим, у меня есть UserStore и я хочу удалить одного пользователя. Я запускаю действие удаления пользователя с id
пользователя, который должен быть удален. Источник отправляет запрос на удаление с этим id
к бэкэнду. Запрос работает, и источники запускают успешное действие.
Как удалить пользователя из StoreState в обработчике успешных действий, поскольку я не получаю идентификатор или любую другую информацию о выполненном запросе?
1 ответ
Вы можете использовать функцию interceptResponse
Итак, в принципе, у вас должна быть такая конструкция в вашем DataSource:
deleteUser: {
remote (state, id) {
//Some backend call here
},
interceptResponse (data, action, args) {
// Here you can access arguments, that were passed to the remote method
// via 'args' argument. What you return from this function will be passed
// to further callbacks (success, error, etc.)
return {data: data, id: args[0]};
}
}
Таким образом, в этом случае с данными, возвращенными удаленным вызовом, вы также передадите исходный идентификатор обратным вызовам и сможете удалить пользователя из вашего магазина.