vuejs удалить элемент из массива - PullRequest
2 голосов
/ 21 января 2020

У меня есть значение формы, которое получает идентификаторы каждый раз, когда я сохраняю данные, но если я удаляю какие-либо из этих данных, их идентификатор не будет удален из значения формы.

data() {
  return {
    savedVariations: [],
    form: {
      variations: [],
    }
  }
},
methods: {
  addVariants(e) {
    e.preventDefault();
    axios.post('/api/admin/variations/store', {
      childs: this.variationChilds,
      parent: this.variationParents,
    })
    .then(res => {
      this.form.variations.push(res.data.data.id); // send id to form.variations
    })
  },
  removeSavedParent(id, index){
    axios.delete('/api/admin/variations/destroy/'+id).then((res) => {
      this.form.variations.splice(id); // delete the id from form.variations (not working)
      this.savedVariations.splice(index, 1);
    })
  },
}

Когда я сохраняю новый элемент, мой form.variations становится variations["1","50", "30"], но когда я удаляю любой из этих элементов, идентификатор не будет удален из form.variations

Любая идея, как удалить идентификатор из переменной формы, когда я удаляю данные?

1 Ответ

2 голосов
/ 21 января 2020

Вы должны найти индекс id в вашем массиве и удалить его, см. Код ниже

this.form.variations.splice(this.form.variations.indexOf(id), 1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...