总结: 利用 :row-class-name=“tableRowClassName” 属性给每一行row的数据对象里添加index属性。
第一步: 给el-table,添加:row-class-name="tableRowClassName"和 @row-click=“clickRow”
<el-table
:row-class-name="tableRowClassName"
:data="tableList"
border
stripe
fit
highlight-current-row
@row-click="clickRow"
>
第二步: 在method里声明方法 tableRowClassName 方法里有两个参数,row和rowIndex row是每一行的数据对象。rowIndex是每一行的索引值。当row.index时候,如果row对象里没有index属性,会自动创建此属性。
// 把每一行的索引放进row
tableRowClassName({ row, rowIndex }) {
row.index = rowIndex;
}
在method里声明方法:clickRow (记得在data里声明index变量)
async clickRow(row) {
if (row.index !== this.index) {
如果点击的当前行的索引 不同的时候,进行一些操作,比如访问接口请求参数,如果一样的话,就不做请求,还是原来的数据。
}
//让点击的这行索引赋值给变量index
this.index = row.index;
}
|