You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
2.4 KiB
96 lines
2.4 KiB
// #ifdef MP-WEIXIN
|
|
/* 小程序端 */
|
|
export default{
|
|
onLoad() {
|
|
this.loadHotList('refresh');
|
|
},
|
|
onPullDownRefresh() {
|
|
this.loadHotList('refresh');
|
|
},
|
|
onReachBottom(){
|
|
this.loadHotList();
|
|
},
|
|
methods: {
|
|
//加载热门推荐列表
|
|
async loadHotList(type='add'){
|
|
if(type === 'add'){
|
|
if(this.loadingType === 2) return;
|
|
this.page = this.page + 1;
|
|
this.$refs.productList.loadType = 'add';
|
|
}else{
|
|
this.page = 1;
|
|
this.hotList = [];
|
|
if(this.$refs.productList){
|
|
this.$refs.productList.loadType = 'refresh';
|
|
}
|
|
}
|
|
this.loadingType = 1;
|
|
const res = await this.$request('product', 'getHotList', {
|
|
offset: (this.page - 1) * 10,
|
|
limit: 10,
|
|
});
|
|
const curList = res.data;
|
|
this.hotList = this.hotList.concat(curList); //追加新数据
|
|
if(type === 'refresh'){
|
|
uni.stopPullDownRefresh();//结束加载状态
|
|
}
|
|
setTimeout(()=>{
|
|
this.loadingType = curList.length < 10 ? 2 : 0;
|
|
}, 300)
|
|
},
|
|
},
|
|
}
|
|
// #endif
|
|
|
|
// #ifndef MP-WEIXIN
|
|
/* 非小程序端 */
|
|
import MescrollMixin from "@/components/mescroll-uni/mescroll-mixins.js";
|
|
export default{
|
|
mixins: [MescrollMixin],
|
|
data() {
|
|
return {
|
|
upOption:{
|
|
auto: false, // 是否自动加载
|
|
page: {
|
|
num: 0, // 当前页码,默认0,回调之前会加1,即callback(page)会从1开始
|
|
size: 10 // 每页数据的数量
|
|
},
|
|
noMoreSize: 1,
|
|
},
|
|
}
|
|
},
|
|
computed: {
|
|
headerHeight(){
|
|
return 750 / uni.upx2px(750) * (this.systemInfo.navigationBarHeight + this.systemInfo.statusBarHeight);
|
|
}
|
|
},
|
|
methods: {
|
|
//加载热门推荐列表
|
|
async loadHotList(e){
|
|
if(e.num === 1){
|
|
//第一页清空数据重载
|
|
this.hotList = [];
|
|
if(this.$refs.productList){
|
|
this.$refs.productList.loadType = 'refresh';
|
|
}
|
|
}else{
|
|
this.$refs.productList.loadType = 'add';
|
|
}
|
|
const res = await this.$request('product', 'getHotList', {
|
|
offset: (e.num - 1) * e.size,
|
|
limit: e.size,
|
|
});
|
|
const curList = res.data;
|
|
this.hotList = this.hotList.concat(curList); //追加新数据
|
|
this.mescroll.endSuccess(curList.length); //结束加载状态
|
|
|
|
console.log(JSON.parse(JSON.stringify(res.data)));
|
|
},
|
|
mescrollInit(mescroll){
|
|
this.isLoading = true;
|
|
this.mescroll = mescroll;
|
|
this.mescroll.resetUpScroll(false)
|
|
}
|
|
},
|
|
}
|
|
// #endif
|