| 
						|
								
							 | 
						|
								
							 | 
						|
								function query(self, queryParams){
							 | 
						|
									// return (self.beforeGetData && self.beforeGetData()) ||
							 | 
						|
									// queryParams || self.queryParams
							 | 
						|
									
							 | 
						|
									// 深度合并对象
							 | 
						|
									return self.$utils.deepMergeObject(
							 | 
						|
									
							 | 
						|
									self.$utils.deepMergeObject(self.queryParams,
							 | 
						|
									
							 | 
						|
									(self.beforeGetData && self.beforeGetData()) || {}),
							 | 
						|
									
							 | 
						|
									queryParams)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								export default {
							 | 
						|
									data() {
							 | 
						|
										return {
							 | 
						|
											queryParams: {
							 | 
						|
												pageNo: 1,
							 | 
						|
												pageSize: 10,
							 | 
						|
											},
							 | 
						|
											total : 0,
							 | 
						|
											List : [],
							 | 
						|
											hasMore: true, // 是否还有更多数据
							 | 
						|
											loading: false, // 是否正在加载
							 | 
						|
										}
							 | 
						|
									},
							 | 
						|
									onPullDownRefresh() {
							 | 
						|
								        this.refreshList()
							 | 
						|
									},
							 | 
						|
									onReachBottom() {
							 | 
						|
								        this.loadMore()
							 | 
						|
									},
							 | 
						|
									onLoad() {
							 | 
						|
								        this.refreshList()
							 | 
						|
									},
							 | 
						|
									methods: {
							 | 
						|
										// 刷新列表
							 | 
						|
										refreshList() {
							 | 
						|
											this.queryParams.pageNo = 1;
							 | 
						|
											this.hasMore = true;
							 | 
						|
											this.List = [];
							 | 
						|
											this.loadList();
							 | 
						|
										},
							 | 
						|
										
							 | 
						|
										// 加载更多
							 | 
						|
										loadMore() {
							 | 
						|
								            console.log(this.hasMore , this.loading);
							 | 
						|
								            
							 | 
						|
											if (!this.hasMore || this.loading) return;
							 | 
						|
											this.queryParams.pageNo++;
							 | 
						|
											this.loadList();
							 | 
						|
										},
							 | 
						|
										
							 | 
						|
										// 加载订单列表
							 | 
						|
										loadList() {
							 | 
						|
											return new Promise((success, error) => {
							 | 
						|
												if(!this.mixinsListApi){
							 | 
						|
													return console.error('mixinsListApi 缺失');
							 | 
						|
												}
							 | 
						|
												if (this.loading) return;
							 | 
						|
												
							 | 
						|
												this.loading = true;
							 | 
						|
												
							 | 
						|
												const params = {
							 | 
						|
													...this.queryParams,
							 | 
						|
												};
							 | 
						|
												
							 | 
						|
												
							 | 
						|
												this.$api(this.mixinsListApi, query(this, params), res => {
							 | 
						|
													this.loading = false;
							 | 
						|
													uni.stopPullDownRefresh();
							 | 
						|
													
							 | 
						|
													if (res.code === 200 && res.result) {
							 | 
						|
														
							 | 
						|
														this.getDataThen && this.getDataThen(res.result.records, res.result.total, res.result)
							 | 
						|
														
							 | 
						|
														success(res.result)
							 | 
						|
														
							 | 
						|
														const newList = res.result.records || [];
							 | 
						|
														this.total = res.result.total
							 | 
						|
														
							 | 
						|
														if (this.pageNo === 1) {
							 | 
						|
															this.List = newList;
							 | 
						|
														} else {
							 | 
						|
															this.List = [...this.List, ...newList];
							 | 
						|
														}
							 | 
						|
														
							 | 
						|
														// 判断是否还有更多数据
							 | 
						|
														this.hasMore = newList.length >= this.queryParams.pageSize;
							 | 
						|
													} else {
							 | 
						|
														uni.showToast({
							 | 
						|
															title: res.message || '加载失败',
							 | 
						|
															icon: 'none'
							 | 
						|
														});
							 | 
						|
														error(res)
							 | 
						|
													}
							 | 
						|
												})
							 | 
						|
											})
							 | 
						|
										},
							 | 
						|
									}
							 | 
						|
								}
							 |