代碼如下:點擊編輯按鈕可編輯當前行,點擊保存可以保存當前行,可以結合業務需要,進一步修改
<template>
<div class="st-table">
<el-table :data="tableData" border style="width: 100%">
<el-table-column prop="date" label="日期" width="180">
<template slot-scope="scope">
<input type="text" v-model="scope.row.date" v-show="scope.row.iseditor" />
<span v-show="!scope.row.iseditor">{{scope.row.date}}</span>
</template>
</el-table-column>
<el-table-column prop="name" label="姓名" width="180">
<template slot-scope="scope">
<input type="text" v-model="scope.row.name" v-show="scope.row.iseditor" />
<span v-show="!scope.row.iseditor">{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column prop="address" label="地址">
<template slot-scope="scope">
<input type="text" v-model="scope.row.address" v-show="scope.row.iseditor" />
<span v-show="!scope.row.iseditor">{{scope.row.address}}</span>
</template>
</el-table-column>
<el-table-column label="操作" width="180">
<template slot-scope="scope">
<el-button type="warning" @click="edit(scope.row, scope)">編輯</el-button>
<el-button type="danger" @click="save(scope.row)">保存</el-button>
</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{
date: "2016-05-02",
name: "王小虎",
address: "上海市普陀區金沙江路 1518 弄",
iseditor: false
},
{
date: "2016-05-04",
name: "王小虎",
address: "上海市普陀區金沙江路 1517 弄",
iseditor: false
},
{
date: "2016-05-01",
name: "王小虎",
address: "上海市普陀區金沙江路 1519 弄",
iseditor: false
},
{
date: "2016-05-03",
name: "王小虎",
address: "上海市普陀區金沙江路 1516 弄",
iseditor: false
}
]
};
},
methods: {
edit(row, index) {
row.iseditor = true;
},
save(row, index) {
row.iseditor = false;
}
}
};
</script>
<style lang="less" scoped>
.st-table {
padding: 10px;
}
</style>
效果:
請指正,請留言