• 技术文章 >微信小程序 >小程序开发

    微信小程序实现滚动加载数据

    angryTomangryTom2020-03-09 10:02:28转载1152
    本篇文章介绍了微信小程序实现滚动加载数据的方法,具有一定的参考价值,希望对学习微信小程序开发的朋友有帮助!

    需要用到的组件和api

    scroll-view(可滚动视图区域)

    wx.showToast(OBJECT)显示消息提示窗----显示loading小菊花用的

    需要用到的属性

    推荐学习:《小程序开发

    20181011185407_47053.jpg

    scrol-view需要指定一个高度,这个高度可以按自己的需求计算,我使用的是屏幕可用高度并且默认一页显示6个

    20181011185428_77844.jpg

    滚动到底部绑定需要触发的事件

    操作事件函数,主要是将请求下来的数据用concat方法进行合并,然后赋值,我是用的for循环假装添加的数据,实际项目中可以换成自己的ajax,并且为了模拟加载我添加了一个1.5秒的定时器,先调用提示框api成功之后关闭

    lower() {
    var result = this.data.res;
    var resArr = [];
      //这里可以使用自己的ajax
    for (let i = 0; i < 10; i++) {
    resArr.push(i);
    };
    var cont = result.concat(resArr);//合并请求的数据
    console.log(resArr.length);
    if (cont.length >= 100) {
    wx.showToast({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中” 
    title: '我也是有底线的',
    icon: 'success',
    duration: 300
    });
    return false;
    } else {
    wx.showLoading({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中” 
    title: '加载中',
    icon: 'loading',
    });
    setTimeout(() => {
    this.setData({
    res: cont
    });
    wx.hideLoading();
    }, 1500)
    }
    }

    成功,放完整代码可以直接复制运行

    js代码

    Page({
      /**
       * 页面的初始数据
       */
      data: {
        height: '',
        res: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
      },
      lower() {
        var result = this.data.res;
        var resArr = [];
        for (let i = 0; i < 10; i++) {
          resArr.push(i);
        };
        var cont = result.concat(resArr);
        console.log(resArr.length);
        if (cont.length >= 100) {
          wx.showToast({ //如果全部加载完成了也弹一个框
            title: '我也是有底线的',
            icon: 'success',
            duration: 300
          });
          return false;
        } else {
          wx.showLoading({ //期间为了显示效果可以添加一个过度的弹出框提示“加载中”  
            title: '加载中',
            icon: 'loading',
          });
          setTimeout(() => {
            this.setData({
              res: cont
            });
            wx.hideLoading();
          }, 1500)
        }
      },
      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
        wx.getSystemInfo({
          success: (res) => {
            this.setData({
              height: res.windowHeight
            })
          }
        })
      }
    })

    更多相关教程,请关注PHP中文网

    以上就是微信小程序实现滚动加载数据的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:zixun.jisuapp.cn,如有侵犯,请联系admin@php.cn删除
    上一篇:小程序消息推送配置案例 下一篇:用微信小程序实现banner轮播图
    PHP编程就业班

    相关文章推荐

    • 微信小程序如何从数据库加载数据• 将HTML转为微信小程序的WXML案例• 怎么打开抖音小程序• 小程序消息推送配置案例

    全部评论我要评论

  • 伟峰

    小程序有个滑动触底事件, 触底了加载第二页数据,追加在第一页数据后面就可以.百度小程序里面有这个事件,微信小程序也有的

    2020-03-10

  • 取消发布评论发送
  • 1/1

    PHP中文网