微信小程序 scroll-view实现上拉加载与下拉刷新的实例


Posted in Javascript onJanuary 21, 2017

微信小程序 scroll-view实现上拉加载与下拉刷新的实例

实现效果图:

微信小程序 scroll-view实现上拉加载与下拉刷新的实例

如图,使用小程序的scroll-view实现的上拉加载数据,下拉刷新数据,试下代码如下:

js文件代码:

var url = "http://192.168.30.4:8080/gtxcx/carrier/getCarrier.action"; 
var page = 1; 
 
var GetList = function (that) { 
 that.setData({ 
 hidden: false 
 }); 
 wx.request({ 
 url: url, 
 data: { 
  pageSize: 10, 
  pageNo: page 
 }, 
 success: function (res) { 
  var l = that.data.list 
  for (var i = 0; i < res.data.length; i++) { 
  l.push(res.data[i]) 
  } 
  that.setData({ 
  list: l 
  }); 
  page++; 
  that.setData({ 
  hidden: true 
  }); 
 } 
 }); 
} 
Page({ 
 data: { 
 hidden: true, 
 list: [], 
 scrollTop: 0, 
 scrollHeight: 0 
 }, 
 onLoad: function () { 
 var that = this; 
 wx.getSystemInfo({ 
  success: function (res) { 
  console.info(res.windowHeight); 
  that.setData({ 
   scrollHeight: res.windowHeight 
  }); 
  } 
 }); 
 }, 
 onShow: function () { 
 var that = this; 
 GetList(that); 
 }, 
 bindDownLoad: function () { 
 var that = this; 
 GetList(that); 
 }, 
 scroll: function (event) { 
 this.setData({ 
  scrollTop: event.detail.scrollTop 
 }); 
 }, 
 refresh: function (event) { 
 page = 1; 
 this.setData({ 
  list: [], 
  scrollTop: 0 
 }); 
 GetList(this) 
 }, 
 onPullDownRefresh: function () { 
 console.log("下拉") 
 }, 
 onReachBottom: function () { 
 console.log("上拉"); 
 } 
})

json文件代码

{ 
 "navigationBarTitleText": "下拉刷新", 
 "enablePullDownRefresh": true, 
 "backgroundTextStyle": "dark" 
}

wxml文件代码:

<view class="container"> 
 <scroll-view scroll-top="{{scrollTop}}" scroll-y="true" style="height:{{scrollHeight}}px;" 
 class="list" bindscrolltolower="bindDownLoad" bindscroll="scroll" bindscrolltoupper="refresh"> 
 <view class="item" wx:for="{{list}}"> 
  <image class="img" src="https://cdn.kuaidi100.com/images/all/56/zhongtong.png"></image> 
  <view class="text"> 
  <text class="title">{{item.carrierName}}</text> 
  <text class="description">{{item.carrierTelphone}}</text> 
  <text class="description">{{item.carrierId}}</text> 
  </view> 
 </view> 
 </scroll-view> 
 <view class="body-view"> 
 <loading hidden="{{hidden}}" bindchange="loadingChange"> 
  加载中... 
 </loading> 
 </view> 
</view>

wxss文件代码

.container{ 
 height: 100%; 
 padding: 20rpx; 
} 
 
.item{ 
 display: flex; 
 margin-bottom: 50rpx; 
width:100%; 
background:#f0f0f0; 
overflow:hidden; 
} 
 
.img{ 
 height: 100rpx; 
 width: 100rpx; 
 border-radius: 50%; 
} 
 
.text{ 
 display: flex; 
 flex-shrink:1; 
 flex-grow:1; 
 padding: 10rpx; 
 flex-wrap: wrap; 
 font-size: 50rpx; 
} 
 
.title{ 
 font-size: 50rpx; 
 margin:10rpx 100rpx 10rpx 100rpx; 
} 
.description{ 
 font-size: 50rpx; 
 align-self:flex-end; 
}

注意,

http://192.168.30.4:8080/gtxcx/carrier/getCarrier.action这个接口就是更具传入的页数,每次返回不同数据。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jquery $.getJSON()跨域请求
Dec 21 Javascript
验证码按回车不变解决方法
Mar 29 Javascript
JavaScript导出Excel实例详解
Nov 25 Javascript
基于jQuery实现在线选座之高铁版
Aug 24 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
Dec 25 Javascript
微信小程序 安全包括(框架、功能模块、账户使用)详解
Jan 16 Javascript
详解axios在node.js中的post使用
Apr 27 Javascript
浅谈ES6 模板字符串的具体使用方法
Nov 07 Javascript
完美解决手机网页中输入框被输入法遮挡的问题
Dec 19 Javascript
详解Angular2学习笔记之Html属性绑定
Jan 03 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
在vue中通过render函数给子组件设置ref操作
Nov 17 Vue.js
JS常用知识点整理
Jan 21 #Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(一)
Jan 21 #Javascript
原生js实现可拖动的登录框效果
Jan 21 #Javascript
微信小程序 WebSocket详解及应用
Jan 21 #Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
Jan 21 #Javascript
遍历json获得数据的几种方法小结
Jan 21 #Javascript
新闻上下滚动jquery 超简洁(必看篇)
Jan 21 #Javascript
You might like
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
2010/02/16 PHP
PHP 数组基础知识小结
2010/08/20 PHP
PHP下使用CURL方式POST数据至API接口的代码
2013/02/14 PHP
php恢复数组的key为数字序列的方法
2015/04/28 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
2016/01/18 PHP
php微信开发自定义菜单
2016/08/27 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
php提取微信账单的有效信息
2018/10/01 PHP
添加到收藏夹代码(兼容几乎所有的浏览器)
2007/01/09 Javascript
jQuery 获取兄弟元素的几种不错方法
2014/05/23 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
详解Javascript中的原型OOP
2016/10/12 Javascript
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
vue调试工具vue-devtools安装及使用方法
2018/11/07 Javascript
JS实现省市县三级下拉联动
2020/04/10 Javascript
vue实现表格合并功能
2020/12/01 Vue.js
Python解释执行原理分析
2014/08/22 Python
跟老齐学Python之集成开发环境(IDE)
2014/09/12 Python
python中文编码问题小结
2014/09/28 Python
Python实现的括号匹配判断功能示例
2018/08/25 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
详解基于python的多张不同宽高图片拼接成大图
2019/09/26 Python
PyTorch 解决Dataset和Dataloader遇到的问题
2020/01/08 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
基于Python爬取fofa网页端数据过程解析
2020/07/13 Python
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
销售业务员岗位职责
2014/01/29 职场文书
最新奶茶店创业计划书范文
2014/02/08 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
幼师个人总结范文
2015/02/28 职场文书
2015年图书馆个人工作总结
2015/05/26 职场文书
教师信息技术学习心得体会
2016/01/21 职场文书
90条交通安全宣传标语
2019/10/12 职场文书
导游词之宁夏贺兰山岩画
2019/11/08 职场文书
Java 写一个简单的图书管理系统
2022/04/26 Java/Android