Добрый день, как удалить массив из обратного метода?
Вот мой код
const app = Vue.createApp({
data() {
return {
app_title: 'Simple Checklist App',
entered_task_value: '',
list_of_tasks: [],
is_priority: false,
}
},
computed: {
reverseItems() {
return [...this.list_of_tasks].reverse();
}
},
methods: {
add_item() {
this.list_of_tasks.push(
{
id: this.list_of_tasks.length + 1,
data: this.entered_task_value,
priority: this.is_priority,
}
);
this.entered_task_value = '';
this.is_priority = '';
},
total_tasks() {
return this.list_of_tasks.length;
},
remove_item(task_index) {
return this.reverseItems.splice(task_index, 1);
}
},
});
app.mount('#app');
Метод remove_item не работает, и я не уверен, как правильно вызвать свойство внутри computed
remove_item(task_index) {
return this.reverseItems.splice(task_index, 1);
}
Это HTML
<ul>
<li
v-for = "(task, task_index) in reverseItems"
class = "item"
:key = "task.id"
:class = "{priority: task.priority}"
>
{{task.id}}
{{task.data}}
<button v-on:click = "remove_item(task_index)">Remove</button>
</li>
</ul>
Заранее спасибо!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы должны обновить list_of_tasks массива задач вместо массива computed.
Вычисленные значения рассчитываются на основе реальных данных и обновляются каждый раз при изменении данных.
Вот документация по вычисляемым свойствам в vue.js
Вот небольшой пример
new Vue({
el: '#app',
data: () => {
return {
myArr: [1,2,3,4,5]
}
},
computed: {
myArrReversed(){
return [...this.myArr].reverse()
}
},
methods : {
addItem(){
this.myArr.push(this.myArr.length +1)
},
removeItem(){
this.myArr.splice(this.myArr.length - 1, 1)
},
}
})<script src = "https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id = "app">
<ul>
<li v-for = "item of myArrReversed" :key='item'>
{{item }}
</li>
</ul>
<button @click = "addItem">Add item</button>
<button @click = "removeItem">Remove item</button>
</div>
При добавлении нового элемента вы добавляете в
list_of_tasks, который происходит отdata. Хорошо. При удалении вы удаляете изreverseItemsто естьcomputed- это невозможно. Вы должны удалить элемент из исходного массива -list_of_tasks