Traitement de pagination du mini programme - faites glisser vers le bas pour charger les données

Langage de développement : applet uniapp
Prémisse : Le backend effectue le traitement de pagination et renvoie toutes les données. Une fois que le frontend a obtenu les données, il transmet deux paramètres au backend, représentant la page à obtenir et le nombre de données affichées sur chaque page.
1. Obtenez des données back-end

data(){
    
    
	return{
    
    
		// 定义初始数组
		transList:[], 
		// 定义初始加载第一页数据
		page: 1
	}
}
// 进入页面时调用加载后端数据的方法
onLoad() {
    
    
	this.TransQueryData()
},
methods: {
    
    
	// 调接口的方法
	TransQueryData() {
    
    
		let obj = {
    
    
			"M": this.page,  // 页数
			"N": "20",		// 每页显示条数
		};
		getTransQueryData(obj).then(res => {
    
    
			uni.hideLoading()
			if (res.data.HEAD.CODE == '000') {
    
    
				// 后端获取的数据拼接到初始数组中
				this.transList = this.transList.concat(res.data.BODY.orderList)
			} 
		})
	},
}

2. Données de rendu de page

<view class="con_list" v-for="(item,index) in transList" :key="index" @click="goToTransDetails(index)">
	<view class="list_top">
		<view class="top_txt">{
   
   {item.txnTypeEnum}}</view>
		<view class="top_amount">{
   
   {(item.txnAmount / 100).toFixed(2)}}</view>
	</view>
	<view class="list_bottom">
		<view class="bot_time">{
   
   {(item.createTime).replace(/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/, '$1-$2-$3 $4:$5')}}</view>
		<view class="bot_result">{
   
   {txnTxt}}</view>
	</view>
</view>

3. Traitement de la pagination

// 页面上拉触底事件的处理函数
onReachBottom() {
    
    
	if(this.transList.length > 0){
    
    
		uni.showLoading({
    
    
			mask:true
		})
		// 每次上拉数据,触底时,都会使页数+1,依次获取第二页、第三页的数据
		this.page += 1
		this.TransQueryData();
	}
},

Je suppose que tu aimes

Origine blog.csdn.net/m0_58953167/article/details/131719254
conseillé
Classement