收藏
回答

scroll-view 的 @refresherrefresh 在向下滑动过程中异常触发问题?



<!-- 加载刷新组件 -->
<LoadRefreshList
  ref="loadRefreshListRef"
  :send-request="sendRequestRecommendList"
  class="size-full min-h-0"
>
  <template #default="{ list, isRefresh }">
    <view class="min-size-full p-2">
      <!-- 瀑布流组件 -->
      <Waterfall :list="list" :is-refresh="isRefresh" :cols="cols">
        <template #default="{ item }">
          <!-- 节点 -->
          <RecommendCardDistribute :item="item" />
        </template>
      </Waterfall>
    </view>
    <template v-if="isRefresh">
      <NkLoadingPage />
    </template>
  </template>
</LoadRefreshList>

<!-- LoadRefreshList -->
<view class="size-full min-h-0">
  <scroll-view
    :lower-threshold="300"
    :refresher-enabled="true"
    :refresher-triggered="isRefresh"
    :scroll-with-animation="true"
    :scroll-y="true"
    class="size-full min-h-0"
    @refresherrefresh="onRefresh"
    @scrolltolower="onLower"
  >
    <template v-if="list && list.length > 0">
      <slot :list="list" :page-num="pageNum" :page-size="pageSize" :total="total" :is-refresh="isRefresh" />
    </template>
  </scroll-view>
</view>

// onRefresh
async function onRefresh(e: any) {
  const { type } = e;
}
最后一次编辑于  01-13
回答关注问题邀请回答
收藏

2 个回答

  • 方知三
    方知三
    01-13
    async function onRefresh(e: any) {
      const { type } = e;
      // todo: 避免向下滑动过程中触发刷新
      if (type === 'scroll') {
        isRefresh.value = false;
        return;
      }
      ...
    }
    
    // 希望有更好的解决方法
    
    01-13
    有用 1
    回复
  • 智能回答 智能回答 本次回答由AI生成
    01-13
    有用
    回复
登录 后发表内容