elementUI——el-table自带排序使用问题

问题

排序表格默认第一列按降序排(状态1),当点击其他列后(状态2),改变日期,触发表格数据更新,发现列的排序还点亮在之前的操作上,没有按照默认来(回到状态1)。

在table-header.js中,针对defaultSort的处理源码如下:

js 复制代码
  mounted() {
    // nextTick 是有必要的 https://github.com/ElemeFE/element/pull/11311
    this.$nextTick(() => {
      const { prop, order } = this.defaultSort;
      const init = true;
      this.store.commit('sort', { prop, order, init });
    });
  }

源码中没有监听default-sort的变化,导致外面数据变更,但表格还是之前的排序操作按钮点亮

解决办法

在我们自己的代码中,手动执行这个代码即可

js 复制代码
// 初始默认code列降序排
 this.defaultSort = {
    prop: 'code',
    order: 'descending',
}
// el-table 需要手动触发排序
this.handleSortChange(this.defaultSort)

// 修改默认点亮按钮
this.$nextTick(() => {
  this.$refs.refTable?.store.commit('sort', { ...this.defaultSort, init: true });
});
相关推荐
一拳不是超人1 天前
前端工程师也要懂的服务器部署知识:从 Nginx 到 CI/CD
服务器·前端
AlkaidSTART1 天前
TanStack Query 技术指南:异步状态管理核心实践
前端·react.js
三原1 天前
超级好用的三原后台管理v1.0.0发布🎉(Vue3 + Ant Design Vue + Java Spring Boot )附源码
java·vue.js·开源
之歆1 天前
RBAC权限模型设计与实现深度解析
vue.js
种花家的强总1 天前
前端项目开发/维护中降低成本的方式之一:降低耦合度
前端
Palpitate_LL1 天前
从XSS到“RCE“的PC端利用链构建
前端·xss
qq_334466861 天前
Edge 浏览器不要提示还原页面
前端·edge
孟祥_成都1 天前
复刻字节 AI 开发流:实践 Node.js 通用脚手架
前端·人工智能·node.js
xiaotao1311 天前
第十二章:TypeScript 深度集成
前端·vite·前端打包
前端Hardy1 天前
前端开发效率翻倍:15个超级实用的工具函数,直接复制进项目(建议收藏)
前端·javascript·面试