如何在 Vue 中使用 Element UI 实现动态下拉框的表格?
在 vue 中使用 element ui 实现动态下拉框的表格
在 vue 中使用 element ui 组件库,可以轻松实现动态下拉框的表格效果。以下是详细的实现步骤:
对于表格的第一行,需要单独处理以实现下拉框功能。具体代码实现如下:
<el-table :data="tabledata"><el-table-column v-for="item in tablecolumns" :prop="item.prop" :label="item.label"> template: (scope) => { if (scope.$index === 0) { return <el-select v-model="scope.row[item.prop]" placeholder="请选择"><el-option v-for="option in dropdownoptions" :label="option.label" :value="option.value"></el-option></el-select> } else { return <span>{{ scope.row[item.prop] }}</span> } } </el-table-column><el-table-column align="right" label="操作"> template: (scope) => { if (scope.$index === 0) { return <el-button type="primary" size="small">保存</el-button> } return <el-button type="danger" size="small">删除</el-button> } </el-table-column></el-table>
在该代码中,第一行使用 el-select 组件实现下拉框选择功能,其他行则使用 span 组件显示选中值。
点击保存按钮后,可以添加一行新记录,具体实现代码如下:
save() { if (this.tableData[0].name && this.tableData[0].age) { this.tableData.push({ name: '', age: '' }) } }
通过这种方式,可以实现 vue + element ui 中动态下拉框的表格效果,包括第一行全为下拉框、选中后保存按钮添加新记录等功能。