gk-shi / v3-waterfall

a waterfall plugin for Vue 3. 一个 vue 3 的自适应瀑布流组件。

Home Page:https://gk-shi.github.io/v3-waterfall/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

卡片就会添加到最左上角

hgaogao opened this issue · comments

  • 每次加载的数量不一样的话,卡片就会添加到最左上角。
  • 绑定滚动父元素上面时如果,进行数据切换(list数组全部替换了),给了key不会重新添加addEventListener('scroll', scrollFn)监听,不给key的话,滚动之后再切换list数据会添加两次数据。
我是给了key然后这样处理
watch(workList, (newV) => {
  if (newV.length === 0) {
    isMounted.value = false
    return
  }
  isMounted.value = true
})
  • 切换数据之后上滑刷新,卡片添加到了左上角不清楚是上面原因导致的
      state.workList.length = 0
      state.workList = []
      state.waterfallUpdate++
//切换之前清空了一遍数据
//workList 就是list的数据,我存在vuex里面

用的是vue3.2

commented

能在 code sandbox 上留一个最小复现的 demo 嘛,我尝试看看在现有基础上能否有方案实现,最近在对渲染流程做一些优化与重构,暂时可能不好在原代码中修复这个问题,抱歉了

commented

关于加载两次的问题是首先滚动到了一定位置,然后切换数据,但滚动位置还被保留了,所以会加载两次,最新的已经修复了。至于前面的问题,抱歉我没有复现到。