【微信小程序】列表滚动触底更新实现

这篇具有很好参考价值的文章主要介绍了【微信小程序】列表滚动触底更新实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序开发系列



前言

在微信小程序开发中经常遇到分页列表需要滚动到底部之后进行请求数据更新,下面介绍如何进行触底更新分页展示。使用到页面上拉触底事件的处理函数onReachBottom


一、上拉触底事件函数onReachBottom

监听用户上拉触底事件,可以在app.json的window选项中或页面配置中设置触发距离onReachBottomDistance。在触发距离内滑动期间,本事件只会被触发一次。
代码:

page.js

 /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
  },

app.json

  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "练习",
    "navigationBarTextStyle": "black",
    "onReachBottomDistance": 100
  },

设置不同onReachBottomDistance的值,当滚动到不同位置时就会触发,单位是px。文章来源地址https://www.toymoban.com/news/detail-743153.html

二、实现

var http = require('../../utils/http.js');
var config = require('../../utils/config.js');

Page({

  /**
   * 页面的初始数据
   */
  data: {
    list: [],
    current: 1,
    pages: 0,
    sts: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    if (options.sts) {
      this.setData({
        sts: options.sts
      });
      this.loadOrderData(options.sts, 1);
    } else {
      this.loadOrderData(0, 1);
    }
  },

  /**
   * 加载订单数据
   */
  loadOrderData: function(sts, current) {
    var ths = this;
    wx.showLoading();//显示加载中
    //加载订单列表
    var params = {
      url: "page/myOrder",
      method: "GET",
      data: {
        current: current,
        size: 10,
        status: sts,
      },
      callBack: function(res) {
        var list = [];
        if (res.current == 1) {
          list = res.records;
        } else {
          list = ths.data.list;
          Array.prototype.push.apply(list, res.records);//设置请求的最新数据
        }
        ths.setData({
          list: list,
          pages: res.pages,
          current: res.current
        });
        wx.hideLoading();//隐藏加载中
      }
    };
    http.request(params);
  },

  /**
   * 状态点击事件
   */
  onStsTap: function(e) {
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
    if (this.data.current < this.data.pages) {//判断是否超过总页数
      this.loadOrderData(this.data.sts, this.data.current + 1);//加载数据
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})

到了这里,关于【微信小程序】列表滚动触底更新实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

    目录 🏍️全局配置-window 🍇window小程序窗口的组成部分 🍇window节点常用的配置项 🍈window导航栏相关设置 设置导航栏标题 设置导航栏背景颜色  设置导航栏的标题颜色  🍉window下拉刷新  设置全局下拉刷新功能   设置下拉刷新的窗口背景色  设置下拉刷新的loading样式 

    2024年02月19日
    浏览(32)
  • 微信小程序——页面事件,.启用下拉刷新监听页面的下拉刷新事件,上拉触底事件,停止下拉刷新的效果

    下拉刷新是移动端的专有名词,指的是通过手指在屏幕上的下拉滑动操作,从而重新加载页面数据的行为。 启用下拉刷新有两种方式: a.全局开启下拉刷新 在 app.json 的window 节点中,将 enablePullDownRefresh 设置为 true. b.局部开启下拉刷新 在页面的.json 配置文件中,将 enablePull

    2024年01月25日
    浏览(41)
  • uniapp-微信小程序实现swiper左右滚动切换tab,上下滚动加载列表

    思路:左右滑动使用swiper,上下滑动用scroll-view,swiper改变时同时改变tab并更新列表 坑点: 1. swiper高度问题,导致滑动不到最底部和最顶部         需要手动计算,减去顶部高度和底部tabbar,并且需要同时设置padding-top和paddin-botton,否则列表显示不完整 2. 由于最开始的代码

    2024年02月04日
    浏览(41)
  • 微信小程序横向滚动卡片列表模板

    在开发微信小程序时,横向可滚动卡片列表是一个必不可缺的页面组件。其不仅美观还可以节省屏幕空间。具体截图如下: 主要用的是scroll-x,具体代码如下: wxml 附:renshu.png wxss js 在微信小程序开发中,横向滚动卡片列表是提升用户体验和界面美观的重要组件。本文介绍了

    2024年02月16日
    浏览(35)
  • Taro微信小程序 实现下拉、触底刷新

    下拉刷新, 需要在页面的config文件中配置 enablePullDownRefresh: true, onReachBottomDistance: 50, backgroundTextStyle: \\\'dark\\\', 在代码中使用usePullDownRefresh, 当我们刷新页面时候会触发usePullDownRefresh方法,这里我们获取数据。

    2024年02月11日
    浏览(29)
  • uView2.0 ScrollList 横向滚动列表微信小程序不滚动问题

    1.1 template 1.2 style(scss) 1.3 问题截图 2.1 解决办法 在 u-scroll-list 内部只放一个盒子,盒子内部包裹横向滚动列表项,并且盒子设置 display:flex; 2.2 template 2.3 style(scss) 2.4 解决截图

    2024年02月11日
    浏览(39)
  • 微信小程序下拉刷新获取数据和触底事件刷新实现

    说明:开启下拉刷新,然后设置窗口的背景色,方便观看。   说明:重新发起请求,并显示加载中   说明:当数据请求成功后,收回下拉刷新框并关闭加载中。 说明: onReachBottomDistance 定义了从页面底部的距离为50px,当滚动距离接近到这个值时,通常会触发一个函数或事件

    2024年02月16日
    浏览(30)
  • 小程序--下拉刷新/上拉触底

    一、什么是下拉刷新 下拉刷新 是移动端的专有名词,是指通过手指在屏幕上的下拉滑动操作,从而 重新加载页面数据 的行为 二、如何开启下拉刷新 ①全局开启下拉刷新 在app.json的windows节点中,将enablePullDownRefresh设置为true ②局部开启下拉刷新 在页面的.json配置文件中,将

    2024年02月14日
    浏览(33)
  • 小程序onReachBottom上拉触底/下拉刷新没有反应问题(日常踩坑)

    今天踩了一个坑,因为改之前同事写的页面,新功能需要用到上拉刷新获取更多数据,当我加上onReachBottom时不管怎么上拉都没有效果后来发现给了整个页面固定高度,这就导致onReachBottom不触发了,其实还有很多导致onReachBottom不触发的,比如使用scroll-view处理不当也会导致o

    2024年02月03日
    浏览(33)
  • web之移动端实现触底和触顶功能、微信小程序、置顶、置底、触发、uniApp、onReachBottom、onPageScroll

    触底 onReachBottom 监听用户上拉触底事件。 可以在 app.json 的 window 选项中或页面配置中设置触发距离 onReachBottomDistance 。 在触发距离内滑动期间,本事件只会被触发一次。 触顶事件 onPageScroll(Object object) 监听用户滑动页面事件。 参数 Object object 的属性为 scrollTop ;类型为 Numb

    2024年02月16日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包