争怎路由网/应用软件/内容

小程序案例:如何自定义下拉刷新

应用软件2022-09-04 阅读
微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。小程序是一种不用下载就能使用的应用,也是一项门槛非常高的创新,经过将近两年的发展,已经构造了新的小程序开发环境和开发者生态。

本篇文章给大家带来的内容是关于小程序实例:如何自定义下拉刷新,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

自定义组件:

js:

// components/test/test.js
Component({
/**
* 组件的属性列表
*/
properties: {
 
},
 
/**
* 组件的初始数据
*/
data: {
scrollHeight: 0,
startY: 0,
tips: '下拉刷新',
isRefreshing: false
},
 
/**
* 组件的方法列表
*/
methods: {
end: function(e) {
if (this.data.isRefreshing) {
return
}
if (this.data.scrollHeight >= 50) {
this.setData({
scrollHeight: 50,
tips: '正在刷新',
isRefreshing: true
})
this.triggerEvent('onRefresh')
} else {
this.setData({
scrollHeight: 0,
tips: '下拉刷新'
})
}
},
move: function(e) {
if (this.data.isRefreshing) {
return
}
 
var that = this;
var moveY = e.touches[0].pageY;
var dY = moveY - that.data.startY;
console.log(dY);
if (dY >= 50 && dY <= 80) {
this.setData({
tips: '松开加载',
scrollHeight: dY
})
} else if (dY > 80) {
this.setData({
tips: '松开加载',
scrollHeight: 80
})
} else {
this.setData({
tips: '下拉刷新',
scrollHeight: dY
})
}
 
},
 
start: function(e) {
this.data.startY = e.touches[0].pageY;
},
 
stopRefresh: function() {
this.setData({
isRefreshing: false,
scrollHeight: -50
})
},
}
})

wxml:

<!--components/test/test.wxml-->
<view class='loading-container' bindtouchend='end' bindtouchmove='move' bindtouchstart='start' style='margin-top:{{scrollHeight}}px;transform:translateY(-50px);' >
<view class="weui-loadmore" style='margin:0 auto;padding:1.5em 0;'>
<view class="weui-loading"></view>
<view class="weui-loadmore__tips">{{tips}}</view>
</view>
</view>

wxss:其中引用了weui 这个用不用都无所谓的很简单的

@import '/pages/common/weui.wxss';
page{
height: 100%;
}
 
.loading-container{
height: 100%;
}

pages里wxml:

<loadmore style='height:100%;' bindonRefresh='onRefresh' id='loadmore'></loadmore>

js://刷新方法回调

onRefresh: function() {
var that = this;
setTimeout(function(){
that.selectComponent("#loadmore").stopRefresh();
},3000)
},
json:
{
"enablePullDownRefresh": false,
"usingComponents":{
"loadmore":"../../components/test/test"
}
}

以上就是小程序实例:如何自定义下拉刷新的详细内容,更多请关注php中文网其它相关文章!


小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。



……