微信小程序之加载更多(分页加载)实例-——-微信小程序实战系列(2)

本文详细介绍了微信小程序中实现加载更多的分页加载技术。通过首次加载15条数据,然后监听scroll-view的bindscrolltolower事件,在用户滚动至底部时触发加载更多,逐次增加数据。示例代码包括wxml、js和wxss部分,以及util.js中的网络请求函数。此外,还提供了搜索功能的实现逻辑。
摘要由CSDN通过智能技术生成

实现原理:

当第一次访问接口时,传递2个必备参数(第1次加载,需要返回数据的个数为15个),和其他参数(需要搜索的字符串)给后台,后台返回第一次数据过来。在请求成功的的回调函数中,判断返回的数据是否>0,是,则取出数据,渲染视图层,并把“上拉加载”显示在列表底部;否,则没有数据可取,并把“没有更多”显示在列表底部,同时把“上拉加载”隐藏掉。

当用户已经滚动到列表底部(这里使用到小程序提供的scroll-view组件的bindscrolltolower事件),触发bindscrolltolower事件,参数pageindex+1,再把2个必备参数(第2次加载,需要返回数据的个数为15个)和其他参数(需要搜索的字符串)给后台,后台把其余的数据返回给前台,前台在原来数据的基础上添加数据。

示例:

wxml:

搜索 { {item.songname}} { {item.name}} 正在载入更多... 已加载全部

js:

var util = require(‘…/…/utils/util.js’)
Page({
data: {
searchKeyword: ‘’, //需要搜索的字符
searchSongList: [], //放置返回数据的数组
isFromSearch: true, // 用于判断searchSongList数组是不是空数组,默认true,空的数组
searchPageNum: 1, // 设置加载的第几次,默认是第一次
callbackcount: 15, //返回数据的个数
searchLoading: false, //"上拉加载"的变量,默认false,隐藏
searchLoadingComplete: false //“没有数据”的变量,默认false,隐藏
},
//输入框事件,每输入一个字符,就会触发一次
bindKeywordInput: function(e){
console.log(“输入框事件”)
this.setData({
searchKeyword: e.detail.value
})
},
//搜索,访问网络
fetchSearchList: function(){
let that = this;
let searchKeyword = that.data.sear

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值