| 
 | |
| 
 | |
| 
 | |
| 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 : [], | |
| 		} | |
| 	}, | |
| 	onPullDownRefresh() { | |
| 		this.getData() | |
| 	}, | |
| 	onReachBottom() { | |
| 		this.loadMoreData() | |
| 	}, | |
| 	onShow() { | |
| 		this.getData() | |
| 	}, | |
| 	methods: { | |
| 		getData(queryParams){ | |
| 			return new Promise((success, error) => { | |
| 				if(!this.mixinsListApi){ | |
| 					return console.error('mixinsListApi 缺失'); | |
| 				} | |
| 				this.$api(this.mixinsListApi,  | |
| 				query(this, queryParams), res => { | |
| 					uni.stopPullDownRefresh() | |
| 					if(res.code == 200){ | |
| 						 | |
| 						this.getDataThen && this.getDataThen(res.result.records, res.result.total, res.result) | |
| 						 | |
| 						success(res.result) | |
| 						 | |
| 						this[this.mixinsListKey || 'list'] = res.result.records || res.result | |
| 						 | |
| 						this.total = res.result.total || res.result.length | |
| 					} | |
| 				}) | |
| 			}) | |
| 		}, | |
| 		loadMoreData(){ | |
| 			console.log('loadMoreData----', this.queryParams.pageSize < this.total); | |
| 			if(this.queryParams.pageSize < this.total){ | |
| 				this.queryParams.pageSize += 10 | |
| 				this.getData() | |
| 			} | |
| 		}, | |
| 	} | |
| }
 |