美文网首页APP & program
uniapp页面常用生命周期

uniapp页面常用生命周期

作者: 扶得一人醉如苏沐晨 | 来源:发表于2023-02-09 10:47 被阅读0次
  • onload等生命中期本文不讲解

onPullDownRefresh
监听用户下拉动作,一般用于下拉刷新,参考示例

  • 需要在 pages.json 里,找到的当前页面的pages节点,并在 style 选项中开启 enablePullDownRefresh
  • 当处理完数据刷新后,uni.stopPullDownRefresh 可以停止当前页面的下拉刷新。
    uni.startPullDownRefresh(OBJECT)
    开始下拉刷新,调用后触发下拉刷新动画,效果与用户手动下拉刷新一致。
    uni.stopPullDownRefresh()
    停止当前页面下拉刷新。
 "pages": [
        {
            "path": "pages/index/index",
            "style": {
                "navigationBarTitleText": "uni-app",
                "enablePullDownRefresh": true
            }
        }
    ],
// 仅做示例,实际开发中延时根据需求来使用。
export default {
    data() {
        return {
            text: 'uni-app'
        }
    },
    onLoad: function (options) {
        setTimeout(function () {
            console.log('start pulldown');
        }, 1000);
        uni.startPullDownRefresh();
    },
    onPullDownRefresh() {
        console.log('refresh');
        setTimeout(function () {
            uni.stopPullDownRefresh();
        }, 1000);
    }
}

onReachBottom
页面滚动到底部的事件(不是scroll-view滚到底),常用于下拉下一页数据。
onReachBottom使用注意 可在pages.json里定义具体页面底部的触发距离onReachBottomDistance,比如设为50,那么滚动页面到距离底部50px时,就会触发onReachBottom事件。

"path": "pages/index/index",
"style": {
        "navigationBarTitleText": "首页",
        "onReachBottonDistance": 50 // 距离底部50px时,触发onReachBottom事件
 },

onPageScroll (监听滚动、滚动监听、滚动事件)参数说明:
注意

  • onPageScroll里不要写交互复杂的js,比如频繁修改页面。因为这个生命周期是在渲染层触发的,在非h5端,js是在逻辑层执行的,两层之间通信是有损耗的。如果在滚动过程中,频发触发两层之间的数据交换,可能会造成卡顿。
  • 如果想实现滚动时标题栏透明渐变,在App和H5下,可在pages.json中配置titleNView下的type为transparent,参考
  • 如果需要滚动吸顶固定某些元素,推荐使用css的粘性布局,参考插件市场。插件市场也有其他js实现的吸顶插件,但性能不佳,需要时可自行搜索。
onPageScroll : function(e) { //nvue暂不支持滚动监听,可用bindingx代替
    console.log("滚动距离为:" + e.scrollTop);
},

onShareAppMessage用户点击右上角分享(小程序)
onShareTimeline监听用户点击右上角转发到朋友圈(微信小程序)
onAddToFavorites监听用户点击右上角收藏(微信小程序)
onResize监听窗口尺寸变化

相关文章

网友评论

    本文标题:uniapp页面常用生命周期

    本文链接:https://www.haomeiwen.com/subject/vnbckdtx.html