elmentui的el-table的某一项属性实现下拉框选择
1、核心原理是点击的时候让该属性的选择框显示出来
2、代码
<template>
<div>
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="日期" width="180"></el-table-column>
<el-table-column prop="name" label="姓名" width="180">
<template slot-scope="scope">
<div>
<el-dropdown trigger="click" @command="commandHandle">
<div class="name" @click="clickName(scope.row)">{{ scope.row.name }}</div>
<el-dropdown-menu v-show="scope.row.editName" slot="dropdown">
<el-dropdown-item v-for="name in nameList" :key="name" :command="name">{{ name }}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</template>
</el-table-column>
<el-table-column prop="address" label="地址"></el-table-column>
</el-table>
</template>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{
date: "2016-05-02",
name: "王小虎",
address: "上海市普陀区金沙江路 1518 弄",
editName: false,
},
{
date: "2016-05-04",
name: "王小虎",
address: "上海市普陀区金沙江路 1517 弄",
editName: false,
},
{
date: "2016-05-01",
name: "王小虎",
address: "上海市普陀区金沙江路 1519 弄",
editName: false,
},
{
date: "2016-05-03",
name: "王小虎",
address: "上海市普陀区金沙江路 1516 弄",
editName: false,
},
],
nameList: ["aaa", "bbb", "ccc", "ddd "],
row: ''
};
},
methods: {
clickName(row) {
console.log("clickName");
this.row = row
row.editName = true;
},
commandHandle(name) {
this.row.name = name
console.log(this.row)
}
},
};
</script>
<style>
.name {
cursor: pointer;
}
</style>
3、效果图