|
@@ -89,6 +89,24 @@ const useTableCheck = <T extends TableDataType<InputDataType>>(data: T, auto = t
|
|
nextTick(() => {
|
|
nextTick(() => {
|
|
elTableRef?.value?.setCurrentRow(tableData.value[positionIndex])
|
|
elTableRef?.value?.setCurrentRow(tableData.value[positionIndex])
|
|
})
|
|
})
|
|
|
|
+ //设置了高亮的行号后,还需要让表格的dom滚动到该处
|
|
|
|
+ const tBodyDomWrap: any = elTableRef?.value?.$refs.bodyWrapper
|
|
|
|
+ if (tBodyDomWrap) {
|
|
|
|
+ const index = positionIndex
|
|
|
|
+ if (index % tableData.value.length == 0) {
|
|
|
|
+ elTableRef?.value?.scrollTo({ left: 0, top: 0, behavior: 'smooth' })
|
|
|
|
+ } else {
|
|
|
|
+ const wrap = tBodyDomWrap.getElementsByClassName('el-scrollbar__wrap')[0]
|
|
|
|
+ const oHeight = wrap.offsetHeight
|
|
|
|
+ const sTop = wrap.scrollTop
|
|
|
|
+ const sHeight = wrap.scrollHeight
|
|
|
|
+ const targetRowAsHeight = 36 * ((current.value?.index || 0) + 1)
|
|
|
|
+ if (sHeight > oHeight && targetRowAsHeight - sTop > oHeight) {
|
|
|
|
+ const t = sHeight - targetRowAsHeight
|
|
|
|
+ elTableRef?.value?.scrollTo({ left: 0, top: sTop + 36, behavior: 'smooth' })
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
{ immediate: true }
|
|
{ immediate: true }
|