一、下拉刷新(官方版)
在 js 中定义 onPullDownRefresh 处理函数(和onLoad等生命周期函数同级),监听该页面用户下拉刷新事件。
需要在 pages.json 里,找到的当前页面的pages节点,并在 style 选项中开启 enablePullDownRefresh。
当处理完数据刷新后,uni.stopPullDownRefresh 可以停止当前页面的下拉刷新
{
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "uni-app",
"enablePullDownRefresh": true
}
}
],
"globalStyle": {
"navigationBarTextStyle": "white",
"navigationBarBackgroundColor": "#0faeff",
"backgroundColor": "#fbf9fe"
}}vue页面js部分:
//下拉
onPullDownRefresh() {
console.log('pull down refresh')
//this.getData(true);//加载数据
setTimeout(function () {
uni.stopPullDownRefresh();
}, 1000);
},二、上拉加载
//上拉
onReachBottom(){
console.log('上拉')
//this.getData();//加载
},三、回到顶部和滚动监听
view页面:
<view>
<view class="top-btn" @tap="toTop" :style="{'display':(flag===false? 'none':'block')}">
<text class="cuIcon-top"></text>
</view>
</view>css:
.top-btn {
position: fixed;
z-index: 9999;
right: 16px;
bottom: 100px;
background-color: #9e9e9eb8;
padding: 5px;
display: none;
width: 80rpx;
height: 80rpx;
border-radius: 50%;
}
.top-btn .cuIcon-top {
font-size: 30px;
color: #FFFFFF;
}js部分:
data() {
return {
//是否显示回到顶部按钮
flag: false,
}
},
methods: {
// 返回顶部
toTop() {
uni.pageScrollTo({
scrollTop: 0,
duration: 100,
});
},
//滚动监听
onPageScroll(e) { //根据距离顶部距离是否显示回到顶部按钮
this.flag = e.scrollTop > 10;
},
}效果:
