• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 浅谈小程序中实现下拉刷新与加载更多效果的方法

浅谈小程序中实现下拉刷新与加载更多效果的方法

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了小程序下拉刷新,加载更多效果等相关知识,希望对您有所帮助

本篇文章给大家介绍一下微信小程序中实现下拉刷新与加载更多效果的几种方法,几乎所有APP里都有下拉刷新和加载更多,希望大家可以掌握!


浅谈小程序中实现下拉刷新与加载更多效果的方法


##下拉刷新

实现下拉刷新目前能想到的有两种方式

1、调用系统的API,系统有提供下拉刷新的API接口


浅谈小程序中实现下拉刷新与加载更多效果的方法

2、监听scroll-view,自定义下拉刷新,还记得scroll-view里面有一个bindscrolltoupper属性吗?忘记请自行回顾上一篇 微信小程序实战篇-电商(二)当滚动到顶部/左边,会触发 scrolltoupper 事件,所以我们可以利用这个属性,来实现下拉刷新功能。

两种方法都可以,第一种比较简单,易上手,毕竟一些逻辑系统已经给你处理好了,第二种适合那种想要自定义下拉刷新样式的小程序,我们讲解电商,就用第一种,系统提供的就好,主要是教会大家怎么用。以首页为例

1、home.json 参数配置

"enablePullDownRefresh": true

我们哪个页面需要下拉刷新,就在哪个页面对应的xxx.json文件配置上面属性,这个属性从字面意思也可以知道,是否允许下拉刷新,当然,如何你不想一个个配置允许下拉刷新,你可以直接在全局变量app.json的window里面配置上面这个属性,这样整个项目都允许下拉刷新了,这个一定要加的,因为系统默认是不具备下拉刷新功能的

2、home.js

//下拉刷新onPullDownRefresh:function(){    wx.showNavigationBarLoading() //在标题栏中显示加载       //模拟加载    setTimeout(function()    {        // complete        wx.hideNavigationBarLoading() //完成停止加载        wx.stopPullDownRefresh() //停止下拉刷新    },1500);},


浅谈小程序中实现下拉刷新与加载更多效果的方法


onPullDownRefresh 下拉刷新事件监听,具体看一下里面的代码,wx.showNavigationBarLoading() 与wx.hideNavigationBarLoading() 这两句话是用来控制小菊花的显示和隐藏,由于我们现在还没有讲解网络请求,所以我就模拟了一下网络加载,通过setTimeout方法,写一个时间延迟的方法,这个方法可以模拟网络加载所消耗的时间,还有就是当网络加载完成我们要停止下拉刷新wx.stopPullDownRefresh() 。

这个到目前为止下拉刷新的功能已经完成了,但是还不够完美,还是有点怪怪的,就是下拉刷新没有动画,有木有~我那时也感到奇怪,微信封装的下拉刷新怎么可能这样呐,后来我参考别人写的代码,发现一个小坑,先看一下我填完坑的效果吧


浅谈小程序中实现下拉刷新与加载更多效果的方法


怎么样,是不是顺眼多了,想知道我是怎么加入这个动画的嘛,让我来给你揭晓,其实很简单,只需要一句话代码在app.json中window里配置下面属性,这个是配置整个系统的背景颜色,为什么我配置系统颜色就会出现下拉刷新了呐,原因就在下拉刷新的动画本身就有,只不过当我们没配置背景颜色,系统默认就为白色,动画也是白色,所以我们就看不到动画效果,是不是有点坑,哈哈~~

"backgroundColor": "#f0145a"


##加载更多

实现加载更多也同理有两种方式

调用系统的API

监听scroll-view,bindscrolltolower滑动到底部的监听

我还是拿第一种实现方式讲解,处理方式和下拉刷新略有不同,不过也大同小异吧,还是以首页为例

1、home.js

//加载更多onReachBottom: function () {    console.log('加载更多')    setTimeout(() => {        this.setData({            isHideLoadMore: true,            recommends: [                {                    goodId: 7,                    name: 'OLAY玉兰油精油沐浴露玫瑰滋养二合一450ml',                    url: 'bill',                    imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161213/148162245074.jpg',                    newprice: "¥36.60",                    oldprice: "¥40.00",                }, {                    goodId: 10,                    name: '兰蔻玫瑰清滢保湿柔肤水嫩肤水化妆水400ml补水保湿温和不刺激',                    url: 'bill',                    imageurl: 'http://mz.djmall.xmisp.cn/files/product/20161201/148057937593.jpg',                    newprice: "¥30.00",                    oldprice: "¥80.00",                }, {                    goodId: 11,                    name: 'Lancome/兰蔻清莹柔肤爽肤水/粉水400ml补水保湿玫瑰水化妆水',                 &nb
  


 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 浅谈小程序中下拉刷新和上拉加载功能怎么实现?(附代码)
  • 浅谈小程序中实现下拉刷新与加载更多效果的方法

相关文章

  • ThinkPHP6.0 重写URL去掉Index.php的解决方法
  • PhotoShop制作漂亮的蓝色发光文字效果教程
  • 又一个开源倒下:layUI官网即将下线,黯然退场!
  • css3怎么设置元素背面不可见
  • 说说在Laravel中怎么执行Shell命令 ?
  • Angular中怎么自定义视频播放器
  • 详解JS,Jquery获取屏幕的宽度和高度代码
  • 帝国CMS如何修改网址+标题+关键字+描叙方法
  • PHP实现获取url地址中顶级域名的方法示例
  • 给dedecms增加二维码功能

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Photoshop绘制漂亮的粉色立体心形教程
    • Photoshop制作超酷的秋季风格立体字
    • Photoshop使用图层样式制作漂亮的相机图标
    • 这几个WordPress插件存在高危漏洞!
    • 如何实现由抖音、快手、知乎、短信等外部APP或浏览器跳转到微信?
    • 宝塔linux管理助手安装完后显示IP为内网IP怎么办
    • JavaScript中字符串(string)如何转json
    • 基于开发中使用UEditor编辑器的注意事项详解
    • Photoshop制作个性时尚的立体字教程
    • PhotoShop CS6制作逼真动物皮毛立体文字特效教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有