Мутация Vuex внутри массива объектов после сохранения бэкэнда - PullRequest
0 голосов
/ 18 октября 2018

У меня есть массив объектов.Когда мой API выполняет метод обновления и сохраняет, я передаю событие через laravel-echo-server и пытаюсь изменить состояние с помощью объекта обновления.Я пытаюсь обновления в режиме реального времени.Все, кроме настоящей мутации, идет по плану.Вот начало этого:

updateExample (state, example) {
  state.examples.map(e => {
    if (e.id === example.id) {
      // entirely replace the old object with the new
    }
    return false
  })
},

Какой идеальный способ сделать это?Я также мог бы вытащить старый объект из массива и вставить новый, но это кажется странным.

1 Ответ

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

Неважно, разобрался:

updateExample (state, example) {
  let index = state.examples.findIndex(e => e.id === example.id)
  if (index !== -1) {
    state.examples[index] = new Example(example)
    return
  }
  state.examples.push(new Example(example))
}

Спасибо за просмотр!

...