在实例渲染以后,修改表格data属性中的某行的数据,页面不能实时刷新,导致用户体验差;我们可以通过vue提供的$set解决此问题。
绘制表格:
<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"></el-table-column> <el-table-column prop="address" label="地址"></el-table-column> <el-table-column label="操作"> <template slot-scope="scope"> <el-button size="small" type="primary" @click="edit(scope.$index)">编辑</el-button> </template> </el-table-column> </el-table>
tableData:
tableData: [{ date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }]
点击编辑触发修改方式edit,传入两个参数($index,value)
edit(index){ this.$set(this.tableData[index],'属性名','修改后的值');
}
这样就实现了页面中表格数据实时刷新的效果
自己小小的纪录一下