微信小程序上拉加载——分页
wxml:
<view class="page">
<scroll-view class="imageViewCss_1" scroll-y="true" bindscrolltolower="toLower" lower-threshold="-100">
<view class="weui-slidecells" wx:for="{{arrayProject}}" wx:for-item="itemProjec" wx:key="id" data-datas="{{itemProjec}}">
<mp-slideview buttons="{{slideButtons}}" icon="true" bindbuttontap="slideButtonTap">
<view class="weui-slidecell">
<view class="showTimeCss">
{{itemProjec.operate_time}}
</view>
<!--内容为自定义对象-->
温度:{{itemProjec.id}}℃ 湿度:{{itemProjec.id}}%
</view>
</mp-slideview>
</view>
<view wx:if="{{state==0}}">
<view>没有更多了</view>
</view>
</scroll-view>
</view>
js:
data: {
//每页显示的行数:
pagesize: 20,
//页码(从1开始):
p: 1,
//用于标识是否还有更多的状态
state: 1,
//用于渲染页面的数组
arrayProject: [],
//用于数组的追加和暂存
allProject: [],
},
onLoad: function (options) {
var mythis = this;
getproinfo(this.data.pagesize, this.data.p, mythis)
},
toLower: function () {
var that = this;
var state = that.data.state;
if (state > 0){
wx.showLoading({
title: '加载中...',
});
that.data.p = that.data.p + 1;
getproinfo(this.data.pagesize, this.data.p, that);
wx.hideLoading();
}
},
function getproinfo(pagesize, p, mythis) {
wx.request({
url: "******",
method: 'POST',
header: {
'content-type': 'application/x-www-form-urlencoded'
},
data: {
//其他参数"page": p,
"limit": pagesize
},
success: function (res) {
var resData = res.data;
var resLength = res.data.length;
//如果搜出来的结果<1 就说明后面已经没数据可加载了,所以将state设为0
if (resLength < 1)
mythis.setData({
state: 0
});
else {
var state1 = 1;
//如果有数据,但小于每次期望加载的数据量(pagesize),将state设为0,表示后面已没有数据可加载
if (resLength < mythis.data.pagesize)
var state1 = 0;
//循环将结果集追加到数组后面
for (var i = 0; i < resLength; i++) {
mythis.data.allProject.push(resData[i]);
}
mythis.setData({
arrayProject: mythis.data.allProject,
state: state1
});
}
//console.log(mythis.data.arrayProject)
},
fail: function (res) {
//console.log(res);
}
});
}
wxss:
page,
.page{
height: 100%;
}
.imageViewCss_1{
width: 100%;
height: 100%;
}
.showTimeCss{
font-size:14px;
font-family: NSimSun;
}
微信小程序上拉加载——分页的更多相关文章
- 微信小程序上拉加载下拉刷新
微信小程序实现上拉加载下拉刷新 使用小程序默认提供方法. (1). 在xxx.json 中开启下拉刷新,需要设置backgroundColor,或者是backgroundTextStyle ,因为加载 ...
- 微信小程序 - 上拉加载下拉刷新
点击下载示例:小程序 - 上拉刷新下拉加载
- 微信小程序上拉加载:onReachBottom详解+设置触发距离
前端经常遇到上拉加载更多的需求,一般还涉及到翻页.小程序里已经给了下拉到底的触发方法onReachBottom(),这里记录下怎样使用这个方法实现下拉加载更多,有需要的直接看代码,有详细注释: 1.首 ...
- 微信小程序 - 上拉加载
demo.wxml 文件 <view wx:for="{{listdata}}" wx:key="listdata" class='listitem'& ...
- 微信小程序~上拉加载onReachBottom
代码: //页面上拉触底事件的处理函数 onReachBottom(e) { console.log("底部")// 滚动到页面执行 该 方法 wx.showToast({ tit ...
- 微信小程序 - 上拉加载更多组件
详情用例看demo,点击下载示例:loadmore
- 微信小程序之下拉加载和上拉刷新
微信小程序下拉加载和上拉刷新两种实现方法 方法一:onPullDownRefresh和onReachBottom方法实现小程序下拉加载和上拉刷新 首先要在json文件里设置window属性 ...
- 微信小程序下拉加载和上拉刷新两种实现方法
方法一:onPullDownRefresh和onReachBottom方法实现小程序下拉加载和上拉刷新 首先要在json文件里设置window属性 设置js里onPullDownRefresh和onR ...
- 微信小程序之上拉加载更多
loadmore 加载更多(分页加载) 当用户打开一个页面时,假设后台数据量庞大时,一次性地返回所有数据给客户端,页面的打开速度就会有所下降,而且用户只看上面的内容而不需要看后面的内容时,也浪费用户流 ...
随机推荐
- SpringCloud(五):断路器(Hystrix)和hystrixdashboard图实现链路追踪
第一:关于服务调用和熔断安全: ribbon和Feign: 1. 相当于nigx+doubbe,微服务间的服务调用,API网关的请求转发等内容2. Feign整合了Ribbon和Hystrix Hy ...
- Kafka与RabbitMQ对比
Infi-chu: http://www.cnblogs.com/Infi-chu/ Kafka是LinkedIn在2012年发布的开源的消息发布订阅系统,他主要用于处理活跃的流式数据.大数据量的数据 ...
- 安全意识第八期丨OMG!发个帖子竟然摊上大事了
互联网时代,话在网上说.钱在网上花.事在网上办,这早已成为一种习惯,越来越多的人也倾向于通过网络来获取信息. 借助现代信息技术,网络传播者通过即时通讯工具.微博.朋友圈等渠道发布信息,虽然传播起来更便 ...
- sync.Map与Concurrent Map
1. sync.Map 1.1. map并发不安全 go1.6以后map有了并发的安全检查,所以如果在并发环境中读写map就会报错 func unsafeMap() { // 创建一个map对象 m ...
- python-初始网络编程
一.服务端和客户端 BS架构 (腾讯通软件:server+client) CS架构 (web网站) C/S架构与socket的关系: 我们学习socket就是为了完成C/S架构的开发 二.OSI七层 ...
- leetcode——动态规划
立志要熟练动态规划,加油! 最长回文子串给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 思路:设dp[l][r]表示s[l……r]是否回文,枚举右边界r,然后 ...
- CentOS安装docker-compose
一.compose简介 compose是一个定义和运行多容器的docker应用的工具.compose 通过yaml文件配置应用服务,然后仅需一个命令就可以创建和运行所有配置中的服务. 二.compos ...
- macOS 10.15 开启 HiDPI
普通的显示,接上 MacBook 发现原生的分辨率设置在 2K 显示器上字体很小,换成 1080P 分辨率显示效果又特别模糊.下面介绍MacBook强行开启 HiDPI. 什么是 HiDPI 它使用横 ...
- 【Autoit】Autoit 使用
一.Autoit 上传文件. 1.常用语法 - WinActivate("title") 聚焦到指定活动窗口 - ControlFocus ( "titl ...
- HttpClient之用CloseableHttpClient发送post请求
使用HttpClient发送请求的一般步骤(1) 创建HttpClient对象.(2)创建请求方法的实例,并指定请求URL.如果需要发送GET请求,创建HttpGet对象:如果需要发送POST请求,创 ...