Open mjadobson opened 2 weeks ago
Works fine in Svelte 4, but in current 5 RC it only works when scrolling down, scrolling back up shows empty rows.
https://svelte.dev/repl/7ec0fcf9617441b598ea7ecfe64b5e09?version=4.2.18
vs
https://svelte-5-preview.vercel.app/#H4sIAAAAAAAAE3VTbYvbMAz-K8JlXAtJL22vH5ZrC7fB2GCDwY19WfbBTZRWnGMHW23aC_nvw07TK2yLyYseSX6kR04rSlLoRPqrFVpWKFLxVNciEnyuveGOqBhFJJw52NwjK5dbqnmT6Yypqo1l-EmWD1J9JcdQWlPBXZ8WM-lzfOy9sSLHd48-zd-50Y7BKcQa1qBhvQGNDXy3piKHY4vOQw75B1VoDuyRCPRk8pjp1f1bDXp1w-433iPt9rxul0nSebuhgvfrTMgDm0yEqhmrj-aged3OEn91A_pMr-gzu9DdqqAjOGV4nQnvzQQo5JR0gafw5fisENrw6iBX0rl1JqxpMhE2yLgdyUbSpc-xZ5t0vSdjZWRBejedTi-xKe9RX91fGCsYtYHtArb3Ybdgre4LOm68Fjf994KEejaZTnfKbKUab01xnkQwmHuu1ATaTAMA9GqlMEuSd489VEm7I51C0s-KtzJ_2Vlz0EWcG2VsCna3Hc8f3kcwPPxQfFVXyunt0OPGyrpGG0gzHvafJ_UpULwRpDAqy7IHjS3QxlYWdHApzIdYc4rdXhamSSHxaLgTX5IcJ5Ff09nDJEpgUZ9gVp8g9gG37rn3es_y78z55B8VSb8CXhrNcSkrUucUYlnXCmN3doxV9EGRfvkm8-dgfjKao8-ojsiUy-jJklSRk9rFDi31HV7EHC0Wi2DHDW5fiONA4ipjeE96l4LUTFKRdFgMMk-taXoxa1kUISqB2fKqUZBua5hNlYZWnVFUwAgR31Sk15B4je6TFWmMh1OxHEYUamquaPK_uXXh5wznT0SiMgWVhIVI2R6w-939AeUv_sJuBAAA
<script> import VirtualList from 'svelte-tiny-virtual-list'; const sleep = n => new Promise(res => setTimeout(res, n)); </script> <VirtualList height={500} width="auto" itemCount={100000} itemSize={50}> <div slot="item" let:index let:style {style} class="row"> {#await sleep(1000)} loading... {:then} Item #{index} {/await} </div> </VirtualList> </style>
Svelte 4.2.18, Svelte 5.0.0-next.162 Chrome 126.0.6478.62 macOS
It works ok in v5 RC after modifying the lib to use snippets instead of slots:
REPL
Works fine in Svelte 4, but in current 5 RC it only works when scrolling down, scrolling back up shows empty rows.
https://svelte.dev/repl/7ec0fcf9617441b598ea7ecfe64b5e09?version=4.2.18
vs
https://svelte-5-preview.vercel.app/#H4sIAAAAAAAAE3VTbYvbMAz-K8JlXAtJL22vH5ZrC7fB2GCDwY19WfbBTZRWnGMHW23aC_nvw07TK2yLyYseSX6kR04rSlLoRPqrFVpWKFLxVNciEnyuveGOqBhFJJw52NwjK5dbqnmT6Yypqo1l-EmWD1J9JcdQWlPBXZ8WM-lzfOy9sSLHd48-zd-50Y7BKcQa1qBhvQGNDXy3piKHY4vOQw75B1VoDuyRCPRk8pjp1f1bDXp1w-433iPt9rxul0nSebuhgvfrTMgDm0yEqhmrj-aged3OEn91A_pMr-gzu9DdqqAjOGV4nQnvzQQo5JR0gafw5fisENrw6iBX0rl1JqxpMhE2yLgdyUbSpc-xZ5t0vSdjZWRBejedTi-xKe9RX91fGCsYtYHtArb3Ybdgre4LOm68Fjf994KEejaZTnfKbKUab01xnkQwmHuu1ATaTAMA9GqlMEuSd489VEm7I51C0s-KtzJ_2Vlz0EWcG2VsCna3Hc8f3kcwPPxQfFVXyunt0OPGyrpGG0gzHvafJ_UpULwRpDAqy7IHjS3QxlYWdHApzIdYc4rdXhamSSHxaLgTX5IcJ5Ff09nDJEpgUZ9gVp8g9gG37rn3es_y78z55B8VSb8CXhrNcSkrUucUYlnXCmN3doxV9EGRfvkm8-dgfjKao8-ojsiUy-jJklSRk9rFDi31HV7EHC0Wi2DHDW5fiONA4ipjeE96l4LUTFKRdFgMMk-taXoxa1kUISqB2fKqUZBua5hNlYZWnVFUwAgR31Sk15B4je6TFWmMh1OxHEYUamquaPK_uXXh5wznT0SiMgWVhIVI2R6w-939AeUv_sJuBAAA
Svelte 4.2.18, Svelte 5.0.0-next.162 Chrome 126.0.6478.62 macOS