vue element实现增删
使用 Vue 和 Element UI 实现增删功能
安装 Element UI
确保项目中已安装 Element UI。若未安装,可通过以下命令安装:
npm install element-ui
在 main.js 中引入 Element UI:

import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
实现表格和操作按钮
在组件中定义表格数据及操作按钮:
<template>
<div>
<el-button type="primary" @click="handleAdd">新增</el-button>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button size="mini" @click="handleEdit(scope.row)">编辑</el-button>
<el-button size="mini" type="danger" @click="handleDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
</div>
</template>
定义数据和方法
在 script 部分初始化数据并实现增删逻辑:

<script>
export default {
data() {
return {
tableData: [
{ name: '张三', age: 20 },
{ name: '李四', age: 22 }
]
};
},
methods: {
handleAdd() {
this.tableData.push({ name: '新用户', age: 0 });
},
handleEdit(row) {
// 编辑逻辑,可结合对话框组件实现
console.log('编辑行:', row);
},
handleDelete(row) {
this.$confirm('确认删除此记录?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const index = this.tableData.indexOf(row);
this.tableData.splice(index, 1);
this.$message.success('删除成功');
});
}
}
};
</script>
添加对话框组件(可选)
若需通过弹窗新增数据,可引入 el-dialog:
<el-dialog title="新增数据" :visible.sync="dialogVisible">
<el-form :model="formData">
<el-form-item label="姓名">
<el-input v-model="formData.name"></el-input>
</el-form-item>
<el-form-item label="年龄">
<el-input v-model="formData.age"></el-input>
</el-form-item>
</el-form>
<div slot="footer">
<el-button @click="dialogVisible = false">取消</el-button>
<el-button type="primary" @click="submitForm">确定</el-button>
</div>
</el-dialog>
对应 script 部分需扩展:
data() {
return {
dialogVisible: false,
formData: { name: '', age: '' }
};
},
methods: {
submitForm() {
this.tableData.push({ ...this.formData });
this.dialogVisible = false;
this.formData = { name: '', age: '' };
}
}
注意事项
- 删除操作需确认以防止误删,使用
this.$confirm实现二次确认。 - 表单验证可通过 Element UI 的
rules属性增强交互完整性。 - 实际项目中建议将数据操作与后端 API 结合,通过
axios发送请求。






