element-ui 中表格组件内部对滚动事件做了防抖。它不会实时修改非固定列的位置 ,有几毫秒的延迟
方法一:使用doLayout 官方
@Watch('data', { deep: true })private onTotalChange () {this.updateTableHeight();// 解决固定列 错位问题this.$nextTick(() => {this.rootComponent().doLayout();// setTimeout(() => {// const dom = this.rootComponent().bodyWrapper;// dom.addEventListener('scroll', () => {// const scrollTop = dom.scrollTop;// 滚动高度// console.log('scrollTop', scrollTop);// this.rootComponent().$refs.fixedBodyWrapper.scrollTop = scrollTop;// });// });});}
方法二:el-table-column增加width
固定列中,fixed=“right”,需要指定宽度 width
与固定列相邻的一列不加width,其他的列指定宽度