diff --git a/pages/index/index.js b/pages/index/index.js index 44bdf45..157446e 100644 --- a/pages/index/index.js +++ b/pages/index/index.js @@ -778,14 +778,17 @@ Page({ lastDataTimestamp: new Date().getTime() }) - // 检查过滤后的非广告商品数量,如果不足6个且当前不是加载更多状态,则自动触发上拉加载更多 + // 检查过滤后的非广告商品数量,如果不足6个,则自动触发上拉加载更多 + // 对于已发布商品,在非加载更多模式下触发;对于售空商品,在加载更多模式下触发 const nonAdGoodsCount = filteredGoods.filter(item => !item.isAd).length; - if (!isLoadMore && nonAdGoodsCount < 6 && !this.data.loadingMore && !this.data.isLoading) { - console.log('非广告商品数量不足6个,自动触发上拉加载更多'); - // 使用setTimeout确保当前任务完成后再触发加载更多 - setTimeout(() => { - this.loadGoods(true); - }, 100); + if (nonAdGoodsCount < 6 && !this.data.loadingMore && !this.data.isLoading) { + if (!isLoadMore || this.data.isQueryingSoldOut) { + console.log('商品数量不足6个,自动触发上拉加载更多'); + // 使用setTimeout确保当前任务完成后再触发加载更多 + setTimeout(() => { + this.loadGoods(true); + }, 100); + } } }, @@ -870,6 +873,7 @@ Page({ }) // 检查过滤后的非广告商品数量,如果不足6个,则自动触发上拉加载更多 + // 对于已发布商品,在非加载更多模式下触发;对于售空商品,在加载更多模式下触发 const nonAdGoodsCount = filteredGoods.filter(item => !item.isAd).length; if (nonAdGoodsCount < 6 && !this.data.loadingMore && !this.data.isLoading) { console.log('刷新后商品数量不足6个,自动触发上拉加载更多');