Akryum / vue-virtual-scroller

⚡️ Blazing fast scrolling for any amount of data
https://vue-virtual-scroller-demo.netlify.app
9.36k stars 896 forks source link

ForceUpdate is repreatedly called in pageMode #768

Open healqq opened 1 year ago

healqq commented 1 year ago

Describe the bug

Resize event of scroller element is constantly triggered during scrolling (causing forceUpdate), due to it not having fixed height when pageMode is true. see: https://github.com/Akryum/vue-virtual-scroller/blob/v1/packages/vue-virtual-scroller/src/components/DynamicScroller.vue#L193

I would assume that size of scroll container(https://github.com/Akryum/vue-virtual-scroller/blob/v1/packages/vue-virtual-scroller/src/components/RecycleScroller.vue#L601) should be observed in this case?

Reproduction

Steps to reproduce: Have DynamicScroller component with pageMode=true and items of different sizes Scroll until new item is rendered/hidden Expected behavior: Resize is not emitted

Current behavior: Resize emitted

System Info

System:
    OS: Windows 10 10.0.19044
  Binaries:
    Node: 16.18.1
    Yarn: 1.17.3
    npm: 8.19.2
  Browsers:
    Chrome: 107.0.5304.88
    Edge: Spartan (44.19041.1266.0), Chromium (107.0.1418.35)
    Internet Explorer: 11.0.19041.1566
  npmPackages:
    vue: 2.6.11 => 2.6.11
    vue-virtual-scroller: ~1.1.2 => 1.1.2

Used Package Manager

npm

Validations