В моем магазине Vuex есть массив с именем case.
Я хочу обновить массив новым содержимым при обновлении нескольких полей в существующем элементе в массиве.
Я думал, что смогу сделать что-то подобное в своей мутации, но не сработает и получит ошибку typeError: undefined is not an object (evaluating 'state.objects.find')
-
EDIT_CASE (state, payload) {
const item = state.objects.find(item => item.id === payload.recordId);
Object.assign(item, payload.case_status);
мой массив выглядит следующим образом:
[
{
"case_name": "Laptop not working",
"case_status": "live",
"case_summary": "This is some summary content",
"createdBy": "zippy",
"createdDate": "2018-06-21T15:20:22.932Z",
"id": "-LFXvk9yY5c-O8yIdf8k"
},
{
"case_name": "Something else",
"case_status": "live",
"case_summary": "This is some summary content",
"createdBy": "zippy",
"createdDate": "2018-06-21T15:20:22.932Z",
"id": "-STVvk9yY5c-O3yiTy8k"
}
]
Я также думаю, что из того, что я прочитал, Vue не наблюдает изменений внутри массивов, так что, возможно, я поступаю совершенно неправильно, и мне нужно удалить, а затем повторно добавить элемент массива?
По сути, у меня есть список, я делаю изменения в своем бэкэнде, теперь я хочу, чтобы этот список отражал изменения, внесенные мной при обновлении состояния дел, кто-нибудь может помочь?