|
|
|
@ -706,6 +706,7 @@ Page({ |
|
|
|
filteredGoods: filteredGoods, |
|
|
|
loadingMore: false, |
|
|
|
isLoading: false, |
|
|
|
isRefreshing: false, // 确保下拉刷新状态被重置
|
|
|
|
page: this.data.page + 1, |
|
|
|
// 更新缓存时间戳
|
|
|
|
lastDataTimestamp: new Date().getTime() |
|
|
|
@ -894,9 +895,10 @@ Page({ |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
// 筛选时不显示骨架屏
|
|
|
|
if (isLoadMore) { |
|
|
|
this.setData({ loadingMore: true }) |
|
|
|
} else { |
|
|
|
} else if (!forceRefresh) { // 只有非筛选的首次加载才显示骨架屏
|
|
|
|
this.setData({ isLoading: true }) |
|
|
|
} |
|
|
|
|
|
|
|
@ -956,7 +958,11 @@ Page({ |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
console.error('加载商品数据失败:', err) |
|
|
|
this.setData({ loadingMore: false, isLoading: false }) |
|
|
|
this.setData({ |
|
|
|
loadingMore: false, |
|
|
|
isLoading: false, |
|
|
|
isRefreshing: false // 确保下拉刷新状态被重置
|
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
@ -1056,6 +1062,7 @@ Page({ |
|
|
|
filteredGoods: filteredGoods, |
|
|
|
loadingMore: false, |
|
|
|
isLoading: false, |
|
|
|
isRefreshing: false, // 确保下拉刷新状态被重置
|
|
|
|
hasMoreData: false // 缓存数据不分页
|
|
|
|
}); |
|
|
|
}, |
|
|
|
@ -1408,7 +1415,7 @@ Page({ |
|
|
|
return // 如果选择的分类和当前相同,不重复加载
|
|
|
|
} |
|
|
|
|
|
|
|
// 清除缓存并重新加载数据 - 仿照下拉刷新机制
|
|
|
|
// 清除缓存并重新加载数据 - 筛选时不显示骨架屏,直接显示内容
|
|
|
|
this.setData({ |
|
|
|
selectedCategory: category, |
|
|
|
searchKeyword: '', // 清除搜索关键词,筛选框优先级更高
|
|
|
|
@ -1417,7 +1424,8 @@ Page({ |
|
|
|
hasMoreData: true, |
|
|
|
goods: [], |
|
|
|
filteredGoods: [], |
|
|
|
isLoading: true, |
|
|
|
isLoading: false, // 筛选时不显示骨架屏
|
|
|
|
isRefreshing: false, // 筛选时不显示下拉刷新状态
|
|
|
|
// 清除所有缓存以获取最新数据
|
|
|
|
categoryQueryCache: {}, |
|
|
|
lastDataTimestamp: 0, |
|
|
|
|