【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

2024-03-31 1046阅读

【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

  • 💌 所属专栏:【微信小程序开发教程】

  • 😀 作  者:我是夜阑的狗🐶

  • 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘

    文章目录

    • 前言
    • 一、上拉触底案例
        • 1、案例效果
        • 二、获取随机颜色
        • 三、在页面加载时获取初始数据
        • 四、渲染 UI 结构并美化页面效果
        • 五、上拉触底时获取随机颜色
        • 六、添加 loading 提示效果
        • 七、对上拉触底进行节流处理
        • 总结

          前言

            大家好,又见面了,我是夜阑的狗🐶,本文是专栏【微信小程序开发教程】专栏的第27篇文章;

            今天开始学习微信小程序的第15天💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。

            专栏地址:【微信小程序开发教程】, 此专栏是我是夜阑的狗微信小程序开发过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。

            如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


          一、上拉触底案例

            前面已经学习了页面事件–上拉触底,通过栗子学习了上拉触底的监听触发和配置上拉底距。接下来就来通过案例详细了解上拉触底事件。话不多说,让我们原文再续,书接上回吧。

          【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

          1、案例效果

            可以先来看一下要实现的效果图,图中有随机背景颜色的box,如下所示:

          【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

            想要实现上面的那个效果,实现步骤可分为 6 个步骤:

          • Step 1、首先定义获取随机颜色的方法;
          • Step 2、通过 onLoad 函数在页面加载时获取初始数据;
          • Step 3、获取数据之后,将其渲染在 UI 结构并美化页面效果;
          • Step 4、在上拉触底时调用获取随机颜色的方法;
          • Step 5、给上拉触底添加 loading 提示效果;
          • Step 6、对上拉触底进行节流处理,防止请求没完成之前,下一个请求触发;

            二、获取随机颜色

              首先来定义获取随机颜色的方法,具体代码如下:

            contact.js

              这里 colorList 数组要保留新旧数据一起,所以赋值的时候要采用拼接方式进行。

            Page({
              /**
               * 页面的初始数据
               */
              data: {
                colorList: []
              },
              
              /**
               * 获取随机颜色
               */
              getColors() {
                wx.request({
                  url: 'https://www.escook.cn/api/color',
                  method: 'GET',
                  success: ({data: res}) =>{
                    console.dir(res);
                    this.setData({
                      colorList: [...this.data.colorList, ...res.data]
                    })
                  }
                })
              },
              /**
               * 生命周期函数--监听页面加载
               */
              onLoad(options) {
                this.getColors();
              },
            })
            

              可以来看一下控制台有没有打印出数据:

            【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

            三、在页面加载时获取初始数据

              在定义完随机获取颜色的方法之后,就要在页面加载的时候来获取了,具体代码如下:

            contact.js

              这里 colorList 数组要保留新旧数据一起,所以赋值的时候要采用拼接方式进行。

            Page({
              /**
               * 生命周期函数--监听页面加载
               */
              onLoad(options) {
                this.getColors();
              },
            })
            

              点击 AppData 也能看到 colorList 数组也被赋值了。

            【微信小程序】-- 页面事件 - 上拉触底 - 案例(二十七)

            四、渲染 UI 结构并美化页面效果

              能获取数据之后,接下里就是将数据展示在页面上并对页面样式进行美化,因为要将 colorList 数组渲染在页面上,所以要用 wx:for 来进行实现,具体代码如下:

            contact.wxml

              注意这里不要忘记给 wx:key 赋值 ,其中还通过style动态绑定背景颜色。

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]