el-table ToggleRowSelection实现取消选中没效果(virtual-scroll)

场景: 就是在虚拟列表el-table选中之后 点击查询 默认之前选中的

现象: 就是实现选中, 但是无法去除勾选等等

问题发现: 看定位的数据 有多个一样的,我想着勾选之前 先去掉勾选 ,但是没效果或者说"相同的数据",this.$refs.chargeList.toggleRowSelection(arr, true)去这样做勾选,竟然出现多条看似一样的

复制代码
  <virtual-scroll
              ref="virtualScroll"
              :data="list"
              row-key="ids"
              :item-size="62"
              key-prop="ids"
              @change="(virtualList) => table.data = virtualList">
              <el-table
                :table-id="$route.path + ':chargeHistoryTable'"
                v-loading="table.loading"
                :height="virtualTableHeight"
                :data="table.data"
                ref="chargeList"
                row-key="ids"
                border
                @select="onSelect"
                @select-all="onSelectAll"
                @selection-change="handleSelectionChange"

看返回的数据 基本一样 但是 这里的row-key 之前我绑定的是 ids, ids是我随机生成的,列表每行

ids: Math.random().toString(10).slice(2,10),

到此大家已经发现问题了吧,就是我第一次查询 和第二次查询 返回的列表内容是一样的,但由于我每行随机生成的ids不一样, 调用 toggleRowSelection方法 就认为这两个对象是不一样的。

注意注意这一点:

改动方法: row-key绑定成id 这里的id是后端返回的 就是一样的 坑死了

相关推荐
w_y_fan1 分钟前
Flutter 滚动组件总结
前端·flutter
wuli金居哇4 分钟前
我用 Turborepo 搭了个 Monorepo 脚手架,开发体验直接起飞!
前端
Asort6 分钟前
JavaScript 从零开始(五):运算符和表达式——从零开始掌握算术、比较与逻辑运算
前端·javascript
一枚前端小能手8 分钟前
🚀 缓存用错了网站更慢?前端缓存策略的5个致命误区
前端·javascript
艾小码9 分钟前
为什么你的页面会闪烁?useLayoutEffect和useEffect的区别藏在这里!
前端·javascript·react.js
艾小码10 分钟前
告别Vue混入的坑!Composition API让我效率翻倍的3个秘密
前端·javascript·vue.js
南雨北斗11 分钟前
VS Code 中手动和直接运行TS代码
前端
小高00713 分钟前
🔍说说对React的理解?有哪些特性?
前端·javascript·react.js
烛阴13 分钟前
【TS 设计模式完全指南】懒加载、缓存与权限控制:代理模式在 TypeScript 中的三大妙用
javascript·设计模式·typescript
Samsong13 分钟前
JavaScript逆向之反制无限debugger陷阱
前端·javascript