element-plus 表格-定位到指定行

表格数据量一页占不下的时候,需要定位到指定的行,显示在可视区域中。采用

scrollTo 滚动到一组特定坐标 (options: ScrollToOptions | number, yCoord?: number)

核心代码

/*
 * 滚动到指定行 tableScrollToRow
 tableElement:表格元素  install.refs.[tableRef]
 rowindex:定位到行号
 isprecise:是否精确计算行高,默认是false不计算,只有第一行的行高
*/
function tableScrollToRow(tableElement, rowindex, isprecise = false) {
  const theTableRows = tableElement.$el.querySelectorAll('.el-table__body tbody .el-table__row')
  let scrollTop = 0;
  for (let i = 0; i < theTableRows.length; i++) {
    if (i === rowindex) {
      break
    }
    scrollTop += theTableRows[i].offsetHeight
    if (!isprecise) {
      scrollTop *= (rowindex - 2);
      break;
    }

  }
  tableElement.scrollTo(0, scrollTop)
}

完整代码




 


你可能感兴趣的:(vue.js,javascript,前端)