下拉刷新

1.首先在.json文件中配置(如果在app.json文件中配置,那么整个程序都可以下拉刷新。如果写在具体页面的.json文件中,那么就是对应的页面下拉刷新。)

具体页面的.json文件:

{
"enablePullDownRefresh":true
}

app.json文件:

  "window":{
"enablePullDownRefresh": true

2.js文件中添加回调函数

 /**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () { },

上拉加载更多(不需要配置)

  /**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () { },

1.publish.wxml文件

<block wx:for="{{publishs}}" wx:key="publishs">
<view class="publish">
<text>{{item.songname}}</text>
</view>
</block>
<view class="weui-loadmore" hidden="{{!isHideLoadMore}}">
<view class="weui-loading"></view>
<view class="weui-loadmore__tips">正在加载</view>
</view>
<view class="Completesollow" hidden="{{!searchLoadingComplete}}">没有更多了...</view>

2.publish.js文件

/**
* 页面的初始数据
*/
data: {
publishs:[],
isHideLoadMore:false, //"上拉加载"的变量,默认false,隐藏  
searchLoadingComplete:false, //“没有数据”的变量,默认false,隐藏 
page:, //第一页
isFromSearch:true
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.dataget()
},
dataget:function(){
var that = this
wx.request({
url: 'https://c.y.qq.com/soso/fcgi-bin/search_for_qq_cp?g_tk=5381&uin=0&format=json&inCharset=utf-8&outCharset=utf-8&notice=0&platform=h5&needNewCode=1&w=%E9%9F%B3%E4%B9%90&zhidaqu=1&catZhida=1&t=0&flag=1&ie=utf-8&sem=1&aggr=0&perpage=20&n=15&p='+this.data.page+'&remoteplace=txt.mqq.all&_=1501467319794', //仅为示例,并非真实的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json'
},
success: function (res) {
console.log(res.data)
//判断是否有数据,有则取数据
if (res.data.data.song.curnum!= ) {
let searchList = [];
//如果isFromSearch是true从data中取出数据,否则先从原来的数据继续添加 数据继续添加进数组 that.data.publishs.concat
that.data.isFromSearch ? searchList = res.data.data.song.list : searchList = that.data.publishs.concat(res.data.data.song.list)
that.setData({
publishs: searchList,
isHideLoadMore: true,
})
}else{
that.setData({
searchLoadingComplete: true, //显示
isHideLoadMore: false //把"上拉加载"的变量设为false,隐藏
});
}
}
})
},
//加载更多
onReachBottom: function () {
console.log('加载更多')
setTimeout(() => {
this.setData({
// isHideLoadMore: true,
// searchLoadingComplete: false,
page:this.data.page+,
isFromSearch: false
})
this.dataget();
}, )
},

微信小程序(2)--下拉刷新和上拉加载更多的更多相关文章

  1. 微信小程序 在使用wx.request时显示加载中

    微信小程序中,向后台请求数据是,通常想给用户提示正在加载中,如下图: 我们可以用wx.showLoading(OBJECT),当请求服务器的地方多了,怎么才能不每次都要去调用函数,我们只要对wx.re ...

  2. 微信小程序开发--模板(template)使用,数据加载,点击交互

    微信小程序视图层提供了 模板(template),可以在模板中定义代码片段,然后在不同的地方调用.结果在数据渲染那懵逼了.按照官网上对模板的说明和对数据的加载. 1.定义模板 使用name属性,作为模 ...

  3. 微信小程序开发——设置默认图片、错误加载图片

    小程序不支持h5中的onerrorimg,只开放了binderror属性,当错误发生时,会发布到 AppService,事件对象event.detail = {errMsg: 'something w ...

  4. 微信小程序(五) 利用模板动态加载数据

    利用模板动态加载数据,其实是对上一节静态数据替换成动态数据:

  5. juery下拉刷新,div加载更多元素并添加点击事件(二)

    buffer.append("<div class='col-xs-3 "+companyId+"' style='padding-left: 10px; padd ...

  6. 微信小程序 和 laravel8 实现搜索后分页 加载

    Page({ /** * 页面的初始数据 */ data: { activity:{}, page:1, last_page : 0, keyword:'' }, //加载 scroll(e){ le ...

  7. android--------自定义控件ListView实现下拉刷新和上拉加载

    开发项目过程中基本都会用到listView的下拉刷新和上滑加载更多,为了方便重写的ListView来实现下拉刷新,同时添加了上拉自动加载更多的功能. Android下拉刷新可以分为两种情况: 1.获取 ...

  8. Android 自定义 ListView 上下拉动“刷新最新”和“加载更多”歌曲列表

    本文内容 环境 测试数据 项目结构 演示 参考资料 本文演示,上拉刷新最新的歌曲列表,和下拉加载更多的歌曲列表.所谓"刷新最新"和"加载更多"是指日期.演示代码 ...

  9. 微信小程序的下拉刷新

    微信小程序的下拉刷新:在page的js文件中有监听用户下拉刷新的处理函数onPullDownRefresh:function(){} //js文件中自带的处理函数,在onUnload下面,注意不要重复 ...

  10. 微信小程序-页面下拉

    微信小程序当滑动到最顶部和最底部时,继续下拉,会将整个页面拉下去或者拉上去,本来以为是客户端自有的特性,就没去管他,直到我的禅道出现了这个记录... 其实这个问题是可以解决的,只需要在你不想出现在此情 ...

随机推荐

  1. Cobaltstrike系列教程(一)-简介与安装

    0x001-Cobaltstrike简介 Cobalt Strike是一款美国Red Team开发的渗透测试神器,常被业界人称为CS.这款神器许多大佬们都已经玩的很6,我一个菜鸡玩的略有心得,因此写一 ...

  2. 晋江年下文爬取【xpath】

    ''' @Modify Time @Author 目标:晋江年下文 爬取6页 ------------ ------- http://www.jjwxc.net/search.php?kw=%C4%E ...

  3. 【进阶技术】一篇文章搞掂:OAuth2

    一.第一步 1.什么是OAuth2,为什么应该了解 应用程序请求资源所有者进行认证,并接受tokens来访问这些资源应用程序不是以控制资源的“人”的角度去访问资源,而是用许可证举例,备用钥匙,车主主钥 ...

  4. Day1 方法的重载

    方法的重载 方法的标识符包括: 1.方法名称   2.方法的参数(参数类型和参数的数量) 方法的重载:方法名称相同 但是方法参数不同(1.参数类型不同 2.参数类型相同 但是参数个数不同 3.类型和个 ...

  5. MySQL工作中遇到的问题记录

    1:log_slave_updates: 从库1搭建级联从库2,从库1需要开启log_slave_updates,修改/etc/my.cnf,增加一行log_slave_updates=1,重启数据库 ...

  6. ctcss

    CTCSS解码器基于非常窄的带通滤波器,其通过所需的CTCSS音调.滤波器的输出经过放大和整流,只要存在所需的音调,就会产生直流电压.直流电压用于打开,启用或取消静音接收器的扬声器音频级.当音调存在时 ...

  7. flutter输入颜色枚举卡顿假死

    AndroidStudio 3.3.2 遇到 flutter输入颜色枚举卡顿假死,目前没好的解决方案,可以设置显示时间或者关闭popup窗口显示文档,这样就不会卡顿了 下面示例代码在输入 Colors ...

  8. Spring Boot 读取外部的配置文件

    Spring Boot 程序会按优先级从下面这些路径来加载application.properties 或者 application.yml 配置文件 jar包同级目录下的/config目录jar包同 ...

  9. day32—CSS多列布局学习

    转行学开发,代码100天——2018-04-17 关于多列布局,前期已经梳理过,今天的培训课程学习中再次提及,趁此也做个总结和检验. 多列布局的介绍参考: day08—css布局解决方案之多列布局   ...

  10. python字符串常见操作

    字符串常见操作 如有字符串mystr = 'hello world itcast and itcastcpp',以下是常见的操作 <1>find 检测 str 是否包含在 mystr中,如 ...