微信小程序--》小程序全局配置和详解下拉刷新和上拉触底页面事件

发布于:2022-08-06 ⋅ 阅读:(827) ⋅ 点赞:(0)

?️作者简介:大家好,我是亦世凡华、渴望知识储备自己的一名在校大学生

?个人主页:亦世凡华、

?系列专栏:微信小程序

?座右铭:人生亦可燃烧,亦可腐败,我愿燃烧,耗尽所有光芒。

?引言

       ⚓经过web前端开发的学习,相信大家对于前端开发有了一定深入的了解,今天我开设了微信小程序专栏,主要想从移动端开发方向进一步发展,而对于我来说写移动端博文的第一站就是小程序开发,希望看到我文章的朋友能对你有所帮助。

目录

?️全局配置-window

?window节点常用的配置项

?window导航栏相关设置

设置导航栏标题

设置导航栏背景颜色

设置导航栏的标题颜色

?window下拉刷新

设置全局下拉刷新功能 

设置下拉刷新的窗口背景色

设置下拉刷新的loading样式

监听页面下拉事件

停止下拉刷新效果

?window上拉触底

什么是上拉触底

监听页面上拉触底事件

配置上拉触底距离

?️页面配置

?页面配置中常用的配置项


?️全局配置-window

全局设置小程序窗口的外观

?window节点常用的配置项

属性名 类型 默认值 说明
navigationBarTitleText String 字符串 导航栏标题文字内容
navigationBarBackgroundColor HexColor #000000 导航栏背景颜色,如 #000000
navigationBarTextStyle String white 导航栏标题颜色,仅支持black/white
backgroundColor HexColor #ffffff 窗口的背景色
backgroundTextStyle String dark 下拉loading的样式,仅支持dark/light
enablePullDownRefresh Boolean false 是否全局开启下拉刷新
onReachBottomDistance Number 50 页面上拉触底事件触发时距页面底部距离,单位为px

?window导航栏相关设置

设置导航栏标题

设置导航栏背景颜色

设置导航栏的标题颜色

?window下拉刷新

下拉刷新是移动端的专有名词,指的是通过手指在屏幕上的下拉滑倒操作,从而重新加载页面数据的行为。

启用下拉刷新的两种方式:

全局开启下拉刷新

在app.json的window节点中,将enablePullDownRefresh 设置为 true

局部开启下拉刷新

在页面的.json配置文件中,将enablePullDownRefresh 设置为 true

在实际开发中,推荐使用第2种方式,为需要的页面单独开启下拉刷新的效果。

设置全局下拉刷新功能 

注意:在app.json中启用下拉刷新功能,会作用于每个小程序页面。

设置下拉刷新的窗口背景色

当全局开启下拉刷新后,默认的窗口背景色为白色,如果自定义下拉刷新窗口的背景色,可以通过如下设置:

设置下拉刷新的loading样式

当全局开启下拉刷新功能之后,默认窗口的loading样式为白色,如果想更改loading样式的效果,可以将backgroundTextStyle修改值,但可选值只有 lightdark 两种。

监听页面下拉事件

在页面的.js文件中,通过onPullDownRefresh()函数即可监听当前页面的下拉刷新事件。

//页面结构
<view>count的值是:{{count}}</view>
<button bindtap="addCount">+1</button>

//给js文件data设置初始数据
data: {
    count:0
}

// +1 按钮设置点击事件处理函数
addCount(){
  this.setData({
    count:this.data.count + 1
  })
}

/**
 * 页面相关事件处理函数--监听用户下拉动作
 */
onPullDownRefresh() {
  this.setData({
    count:0
  })
},

停止下拉刷新效果

根据上文案例,虽然在编辑器模拟器上效果良好但在在真机模拟过程中,下拉刷新是不会停止的,会一直刷新下去,所以我们要进行设置将其刷新后停止继续下拉刷新。

当处理完下拉刷新后,下拉刷新的loading效果会一直显示,不会主动消失,所以要手动隐藏loading效果。此时,调用wx.stopPullDownRefresh()可以停止当前页面的刷新。

/**
 * 页面相关事件处理函数--监听用户下拉动作
 */
onPullDownRefresh() {
  this.setData({
    count:0
  })
  //当数据重置成功后,调用此函数,关闭下拉刷新效果
  wx.stopPullDownRefresh()
},

?window上拉触底

什么是上拉触底

上拉触底是移动端的专有名称,通过手指在屏幕上的滑动操作,从而加载更多数据的行为。

简言之:当手机浏览页面时,需要下滑得到更多内容,当滚动条滚动到下面多少的距离需要自动加载下一页,这个距离就是上拉触底的距离。默认距离为50px,如果没有特殊需求,建议使用默认值即可。

监听页面上拉触底事件

在页面的.js文件中,通过onReachBottom()函数即可监听当前页面的上拉触底事件。

/**
 * 页面上拉触底事件的处理函数
 */
onReachBottom() {
  console.log('触发了上拉触底事件');
}

配置上拉触底距离

上拉触底距离指的是触发上拉触底事件时,滚动条距离页面底部的距离

可以在全局或者页面的.json文件中,通过onReachBottomDistance属性来配置上拉触底的距离。

?️页面配置

小程序中,app.json中的window节点,可以全局配置小程序中的每一个页面窗口的表现,如果某些小程序页面想要拥有特殊的窗口表现,页面的.json文件可以实现这种需求。

注意:当页面配置与全局配置发生冲突的时候,根据就近原则,最终的效果以页面配置为准

?页面配置中常用的配置项

属性 类型 默认值 描述
navigationBarBackgroundColor HexColor #000000 当前页面导航栏背景颜色,如#000000
navigationBarTextStyle String white 当前页面导航栏标题颜色,仅支持black/white
navigationBarTitleText String 当前页面导航栏标题文字内容
backgroundColor HexColor #ffffff 当前页面窗口的背景色
backgroundTextStyle String dark 当前页面下拉loading的样式,仅支持drak/light
enablePullDownRefresh Boolean false 是否为当前页面开启下拉刷新的效果
onReachBottomDistance Number 50 页面上拉触底事件触发时距页面底部距离,单位px


网站公告

今日签到

点亮在社区的每一天
去签到