vue实现增删
Vue 实现增删功能
在 Vue 中实现增删功能通常涉及数据绑定、事件处理和列表渲染。以下是常见的实现方式:
数据初始化
在 Vue 实例或组件的 data 中定义数组存储数据:
data() {
return {
items: [
{ id: 1, name: 'Item 1' },
{ id: 2, name: 'Item 2' }
],
newItem: ''
}
}
添加功能
通过 v-model 绑定输入框,点击按钮触发添加方法:
methods: {
addItem() {
if (this.newItem.trim()) {
this.items.push({
id: Date.now(),
name: this.newItem
})
this.newItem = ''
}
}
}
模板部分:
<input v-model="newItem" placeholder="Add new item">
<button @click="addItem">Add</button>
删除功能
通过索引或唯一标识删除数组元素:
methods: {
deleteItem(index) {
this.items.splice(index, 1)
}
}
模板部分:
<ul>
<li v-for="(item, index) in items" :key="item.id">
{{ item.name }}
<button @click="deleteItem(index)">Delete</button>
</li>
</ul>
使用计算属性
对于需要过滤或排序的列表,可以结合计算属性:

computed: {
sortedItems() {
return [...this.items].sort((a, b) => a.name.localeCompare(b.name))
}
}
注意事项
- 为列表项设置唯一的
:key属性以提高渲染性能 - 对于大型数据集考虑使用虚拟滚动优化性能
- 深层对象修改时可能需要使用
Vue.set确保响应式更新






