当前位置: 首页 > news >正文

微信小程序知识点(二)

1.下拉刷新事件

如果页面需要下拉刷新功能,则在页面对应的json配置文件中,将enablePullDownRefresh配置设置为true,如下

{"usingComponents": {},"enablePullDownRefresh": true
}

2.上拉触底事件

在很多时候,我们在浏览一些购物网站的时候,往上拉的时候都是动态加载新的数据信息,这个时候就需要用到页面的上拉触底事件,来进行新数据的获取和加载,我们在对应的页面下的js文件中onReachBottom()事件进行监听处理,就可以对上拉触底就行功能编写:

例如我们在一个界面上获取随机颜色加载的案例,

a.我们在data中定义一个colorList来获取随机颜色集合
  data: {colorList:[]     },
b.通过wx:request来调用接口获取随机颜色数据,并且在页面的onLoad事件中调用,目的是为了一进来页面就进行接口的调用
getColors(){wx.request({url: 'https://applet-base-api-t.itheima.net/api/color',method:"GET",success:({data:res}) => {console.log(res)this.setData({colorList:[...this.data.colorList,...res.data]})}})},/*** 生命周期函数--监听页面加载*/onLoad(options) {this.getColors()},
c.在页面中通过wx:for的方法动态显示颜色块
<view wx:for="{{colorList}}" wx:key="index" class="num-item" style="background-color: rgba({{item}});">
{{item}}
</view>
d.在onReachBottom()方法中同样调用getColors方法来实现每次上拉到底的时候获取新的数据进行拼接显示
 /*** 页面上拉触底事件的处理函数*/onReachBottom() {this.getColors()},
e.添加loading提示效果,

通过wx:showLoading(Object object)方法,注意,需要主动调用wx:hideLoading才能关闭提示,

f.最终我们可以看到上拉的效果如下:

上拉触底


3.自定义组件Component

自定义组件指的是自己定义的可以被其他页面引用的component组件,它与页面不同,类似于winform中Form窗口和userControl用户空间的区别。一个用户空间可以被多个窗口使用,同样的一个用户组件Component可以被多个Page引用,自定义组件包括局部组件全局组件:

3.1局部组件:

定义在单独页面中的组件,在某一个页面中的.json文件中的usingComponent节点中来定义,如下:

 "usingComponents": {"my-test1":"/component/test/test"},

然后在对应的页面中直接引用即可:

<my-test1></my-test1>
3.2全局组件

全局组件是定义中小程序外部的app.json中的,同样在app.json文件中增加usingComponents节点进行配置:如下:

{"usingComponents": {"global-test":"/component/test/test"},"style": "v2","componentFramework": "glass-easel","sitemapLocation": "sitemap.json","lazyCodeLoading": "requiredComponents"
}

在app.json文件定义之后,便可以在该小程序的任何页面中进行引用。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Meaven的安装
  • [机器学习]线性回归算法
  • 面向切面:AOP
  • pyflink的窗口
  • MySQL系列—7.内存结构
  • ❤《实战纪录片 1 》原生开发小程序中遇到的问题和解决方案
  • AcWing算法基础课-786第k个数-Java题解
  • 论文速读|利用局部性提高机器人操作的样本效率
  • Peewee+Postgresql+PooledPostgresqlDatabase重连机制
  • 数据结构————栈、队列
  • Uniapp基础学习(二)
  • Anchor Alignment Metric来优化目标检测的标签分配和损失函数。
  • [数据集][目标检测]西红柿成熟度检测数据集VOC+YOLO格式3241张5类别
  • Ubuntu 修改IP
  • 发烧时眼睛胀痛的多种原因
  • $translatePartialLoader加载失败及解决方式
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Android Studio:GIT提交项目到远程仓库
  • HTML5新特性总结
  • LeetCode算法系列_0891_子序列宽度之和
  • PV统计优化设计
  • rabbitmq延迟消息示例
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • spring-boot List转Page
  • ubuntu 下nginx安装 并支持https协议
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • XML已死 ?
  • 从零开始学习部署
  • 对象管理器(defineProperty)学习笔记
  • 关于Flux,Vuex,Redux的思考
  • 前端自动化解决方案
  • 入门级的git使用指北
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 数组大概知多少
  • 我是如何设计 Upload 上传组件的
  • 小程序开发之路(一)
  • k8s使用glusterfs实现动态持久化存储
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • #define 用法
  • #nginx配置案例
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • #Z0458. 树的中心2
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • $.ajax,axios,fetch三种ajax请求的区别
  • (1)(1.9) MSP (version 4.2)
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (第27天)Oracle 数据泵转换分区表
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)h264中avc和flv数据的解析
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)重识new
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等