【微信小程序】-- 页面事件 - 下拉刷新(二十五)

简介: 【微信小程序】-- 页面事件 - 下拉刷新(二十五)



一、下拉刷新事件

  前面已经学习完了页面导航,基本了解到声明式导航和编程式导航,还有导航传参以及将形参挂载当前页面中进行使用。接下来就来学习一下小程序中视图与逻辑中的页面事件是如何进行响应的。话不多说,让我们原文再续,书接上回吧。

1、下拉刷新的概念

  下拉刷新是移动端的专有名词,指的就是通过手指在屏幕上的下拉滑动操作,从而重新加载页面数据的行为。在小程序中经常使用下拉刷新这个操作来刷新页面中的数据。

2、启用下拉刷新

  之前有介绍过,在小程序中所有页面都默认没有下拉刷新的。启用下拉刷新有两种方式:

启动方式 说明
全局开启下拉刷新   在 app.jsonwindow 节点中,将 enablePullDownRefresh 设置
true。但在实际开发过程中,一般是不推荐全局开启的。
局部开启下拉刷新   在页面的 .json 配置文件中,将 enablePullDownRefresh 设置为 true

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

  这里以 message 为例,单独开启下拉刷新功能,具体代码如下所示:

  • message.json
{
  "usingComponents": {},
  "enablePullDownRefresh": true
}

  可以来看一下运行效果:

3、配置下拉刷新窗口的样式

  在全局或页面的 .json 配置文件中,通过 backgroundColorbackgroundTextStyle 来配置下拉刷新窗口的样式,其中两个属性的介绍如下:

属性名 类型 默认值 说明
backgroundColor HexColor #ffffff 用来配置下拉刷新窗口的背景颜色,仅支持16 进制的颜色值。
backgroundTextStyle string dark 用来配置下拉刷新 loading 的样式,仅支持 dark 和 light。

  这里还是以 message 为例,对下拉刷新样式进行修改,具体代码如下所示:

  • message.json
{
  "usingComponents": {},
  "enablePullDownRefresh": true,
  "backgroundColor": "#efefef",
  "backgroundTextStyle": "dark"
}

  可以来看一下运行效果:

4、监听页面的下拉刷新事件

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

message.wxml

  在页面的 wxml 中有如下的 UI 结构,点击按钮可以让 count 值自增 +1。

<view>count当前值为:{{count}}</view>
<button bindtap="countAdd">+1</button>

message.js

Page({
  /**
   * 页面的初始数据
   */
  data: {
    count: 0,
  },
  /**
   * + 1 按钮的点击事件处理函数
   */
  countAdd (){
    this.setData({
      count: this.data.count + 1
    })
  },
})

   运行结果如下所示:

   在此基础上,触发页面的下拉刷新事件的时候,如果要把 count 的值重置为 0,具体代码如下所示:

message.js

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

   可以来看一下运行效果:

5、停止下拉刷新的效果

   前面在使用下拉刷新的时候就发现在真机上,下拉刷新并不会像模拟器那样主动关闭。当处理完下拉刷新后,下拉刷新的 loading 效果会一直显示,不会主动消失,所以需要手动隐藏下拉刷新的 loading 效果。

   此时,调用 wx.stopPullDownRefresh() 可以停止当前页面的下拉刷新。具体代码如下:

message.js

   当数据重置成功之后,调用此函数,自动关闭下拉刷新的效果。

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

   因为真机上运行效果也是与上面的一样,所以就不做展示了。


总结

  感谢观看,这里就是页面事件 - 下拉刷新的介绍使用,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。

相关文章
|
2月前
|
小程序 JavaScript API
微信小程序开发学习之页面导航(声明式导航和编程式导航)
这篇文章介绍了微信小程序中页面导航的两种方式:声明式导航和编程式导航,包括如何导航到tabBar页面、非tabBar页面、后退导航,以及如何在导航过程中传递参数和获取传递的参数。
微信小程序开发学习之页面导航(声明式导航和编程式导航)
|
2月前
|
小程序 JavaScript
微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录
本文介绍了微信小程序中的数据绑定、事件绑定、事件传参与数据同步的基本概念和使用方法,包括如何在data对象中定义数据、使用mustache语法在wxml中渲染数据、绑定和处理事件、事件对象属性、事件传参以及实现输入框与data数据的同步。
微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录
|
1月前
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
447 0
|
2月前
|
JSON 小程序 JavaScript
微信小程序页面事件,下拉刷新事件和上拉触底事件
这篇文章介绍了微信小程序中如何实现下拉刷新和上拉触底事件,包括开启下拉刷新、配置下拉刷新样式、监听下拉刷新事件,以及监听上拉触底事件和配置上拉触底的距离。
|
30天前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
449 7
|
29天前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
498 1
|
1月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
110 7
ly~
|
2月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
78 6
|
1月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
177 1
|
1月前
|
小程序 前端开发 数据安全/隐私保护
微信小程序全栈开发中的身份认证与授权机制
【10月更文挑战第3天】随着移动互联网的发展,微信小程序凭借便捷的用户体验和强大的社交传播能力,成为企业拓展业务的新渠道。本文探讨了小程序全栈开发中的身份认证与授权机制,包括手机号码验证、微信登录、第三方登录及角色权限控制等方法,并强调了安全性、用户体验和合规性的重要性,帮助开发者更好地理解和应用这一关键技术。
61 5