微信小程序中实现页面下拉刷新和上拉加载更多的代码示例

网友投稿 740 2022-10-05

微信小程序中实现页面下拉刷新和上拉加载更多的代码示例

微信小程序中实现页面下拉刷新和上拉加载更多的代码示例

本篇文章给大家带来的内容是关于微信小程序中实现页面下拉刷新和上拉加载更多的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

查看文档,在用page()函数注册页面的时候有这样的两个对象参数用户判断用户在最顶部下拉和到达最底部

在小程序里,用户顶部下拉是默认禁止的,我们需要把他设置为启用,在app.json中的设置对所有页面有效,在单独页面设置则对当前页面有效;

index.json

{ "enablePullDownRefresh": true, "onPullDownRefresh": true, "onReachBottom": true}-

如果看不到下拉动画,需要在 app.json 中设置

"window": { "backgroundTextStyle": "dark" },-

接下来就是写 js 代码了

下拉刷新

/** * 下拉刷新恢复初始化 */ onPullDownRefresh: function () { var self = this; // 刷新清空搜索框 self.data.wxSearchData.value = ''; self.setData({ wxSearchData: self.data.wxSearchData }) // 初始化列表 app.globalData.allData = null; // app.globalData.findData = null; // 初始页数设置为1 app.globalData.currentPage = 1; var _currentPage = app.globalData.currentPage; // 搜索关键字 app.globalData.findData = ''; var _find = app.globalData.findData; // 10位数时间戳 var _timeStamp = Date.parse(new Date()); _timeStamp = _timeStamp / 1000; // 秘钥 var _tokenKey = _timeStamp + "xxx" + "127.0.0.1" + _find; _tokenKey = key.md5(_tokenKey); wx.request({ url: 'https://xxx:9090/v1/Tools/UserModel/GetUserList/', data: { find: _find, tokenKey: _tokenKey, timeStamp: _timeStamp, currentPage: _currentPage, }, method: "GET", header: { "Content-Type": "application/json", }, success: function (res) { app.globalData.allData = res.data.datas; // console.log(res) self.setData({ list: res.data.datas }) // 显示顶部刷新图标 wx.showNavigationBarLoading(); // 隐藏导航栏加载框 wx.hideNavigationBarLoading(); // 停止下拉动作 wx.stopPullDownRefresh(); }, fail: function () { console.log("error") } }) },-

上拉加载更多

/** * 上拉刷新触底加载更多 */ onReachBottom: function () { var self = this; // 显示加载图标 wx.showLoading({ title: '玩命加载中', }) // 页数+1 app.globalData.currentPage ++; var _currentPage = app.globalData.currentPage; // 搜索关键字 var _find = app.globalData.findData; // 10位数时间戳 var _timeStamp = Date.parse(new Date()); _timeStamp = _timeStamp / 1000; // 秘钥 var _tokenKey = _timeStamp + "xxx" + "127.0.0.1" + _find; _tokenKey = key.md5(_tokenKey); wx.request({ url: 'https://api.xxx.com:9090/v1/Tools/UserModel/GetUserList/', data: { find: _find, tokenKey: _tokenKey, timeStamp: _timeStamp, currentPage: _currentPage, }, method: "GET", header: { "Content-Type": "application/json", }, success: function (res) { // 回调函数,将新数据压到队列里 for (var i = 0; i < res.data.each_page; i++) { app.globalData.allData.push(res.data.datas[i]); } // 设置数据 self.setData({ list: app.globalData.allData }) // 隐藏加载框 wx.hideLoading(); }, fail: function () { console.log("error") } }) },-

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:中继(洪泛中继、定向中继)在无线通讯中的应用
下一篇:基于SqlSugar的开发框架循序渐进介绍(13)-- 基于ElementPlus的上传组件进行封装,便于项目使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~