vue3-virtual-scroll-list icon indicating copy to clipboard operation
vue3-virtual-scroll-list copied to clipboard

scrollToBottom 渲染前获取并设置高度bug

Open wvq opened this issue 2 years ago • 0 comments

https://github.com/reactjser/vue3-virtual-scroll-list/blob/1a60766cd0cd1702899925cafc93efa7f6da80b7/src/virtual-list.tsx#L256-L271

这里3ms不够,可能在渲染新数据完成前获取高度。

参考 https://developer.mozilla.org/zh-CN/docs/Web/API/Window/requestAnimationFrame

一般情况每秒60次回调,就是17ms回调一次,设置成大于17ms的值才行。 页面比较卡的时候还是会有问题,以下写法更稳妥点:

const scrollToBottom = () => {
      if (shepherd.value) {
        requestAnimationFrame(() => {
          requestAnimationFrame(() => {
            scrollToOffset(shepherd.value[isHorizontal ? 'offsetLeft' : 'offsetTop'])
          })
        })
      }
    }

#13 的问题也一并解决了

wvq avatar Nov 07 '23 16:11 wvq