element-ui table表格在搜索筛选后保持勾选状态不消失

开发的时候可能会需要用到搜索表格的情况,搜索后表格勾选的就会消失,而elementul有个属性可以处理这个情况。
reserve-selection和row-key搭配使用

代码

<template>
  <span>
      <el-table
      	ref="multipleTable"
        :row-key="getRowKey"
        class="dialog_height"
        :data="tableData"
        tooltip-effect="dark"
        style="width: 100%"
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55" :reserve-selection="true">
        </el-table-column>
        <el-table-column width="600" prop="gtcode" label="规格">
        </el-table-column>
      </el-table>
    </el-dialog>
  </span>
</template>

<script>
export default {
  methods: {
    //搜索后表格勾选不取消
    getRowKey(row) {
      return row.gtcode;
    },
};
</script>

使用流程:三步骤

1,在table上写 :row-key=“getRowKey”
2,在第一列也就是你的勾选框那一列标签上写 :reserve-selection=“true”
3,在methods中写个方法。getRowKey(row){ return row.gtcode;}

完成了!!

当然,这要注意一点,这个row.gtcode不是固定的,是根据你数据是什么来确定的,只要不重复就行,是一个标识作用,平常是用id来区分,但是我的这个后端传的数据里面没有id这个字段,我就直接用名字来当标识符了,自己改成自己的就行。比如你是id,就改成row.id这样的。

你可能感兴趣的:(功能实现,vue,elementul,table,row-key,搜索)