微信小程序篇3 谈谈如何提高小程序的应用速度

这篇具有很好参考价值的文章主要介绍了微信小程序篇3 谈谈如何提高小程序的应用速度。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

小程序在首次启动前,微信会在小程序启动前为小程序准备好通用的运行环境,如运行中的线程和一些基础库的初始化。在进入启动状态时,微信需要完成几项工作:下载小程序代码包、加载小程序代码包、初始化(渲染)小程序首页。所以,我们可以从加载、渲染两个维度去提高应用速度:

加载

1. 控制小程序包的大小

  • 勾选开发者工具中“上传代码时,压缩代码”选项
  • 及时清理无用的代码和资源文件

  • 减少资源包中的图片等资源的数量和大小

2. 采用分包加载

将用户访问率高的页面放在主包里,访问率低的页面放在子包里,按需加载;当用户点击到子包页面时,由于也会有代码包的下载,所有会有卡顿的情况出现,那么我们子包可以采用预加载的技术,不需要等到用户点击到子包页面后再下载子包。

渲染

1. 预加载网络请求的数据

描述现象:

如果小程序打开新页面时需要通过网络请求从接口中获取所用数据,在请求完之前页面都会因为没有数据而呈现一片空白。

解决方案:(方案分为三种,最后一种为预加载方式)

1)先使用从缓存中取出上一次数据,等到请求结束后再使用请求得到的数据​。

2)在加载时显示骨架屏​(骨架屏:在页面尚未加载前展示出来的大致结构)。

3)前一个页面预加载下一个页面的数据,达到秒开的效果​。

预加载设计思路:

1)实现预加载能力的关键是能够调用其他页面的函数,需要获取其他页面对象。但是部分还没有加载出来,getCurrentPage 方法也获取不到,因此需要把预加载页面的 PageOption 给保存起来。

2)那些没有被创建的页面并没有 setData 方法,需要模拟一个 setData 方法,把获取到的数据暂存起来,在 onLoad阶段再调用 setData 呈现到视图上。

3)页面应当可以主动被预加载,但是在没有被预加载的时候也应该能够正常打开。

2. 减少默认 data 的大小

页面打开一个新页面时微信会深拷贝一个 Page 对象,因此,应该尽量减少默认 data 的大小,以及减少对象内的自定义属性。

虽然小程序足够小巧,但启动速度还是有 2-3s,无法达到秒开的效果。单个页面的初始化只需要 1-2ms,也许大部分时间消耗在了微信跟服务器端通信的过程中。文章来源地址https://www.toymoban.com/news/detail-498673.html

到了这里,关于微信小程序篇3 谈谈如何提高小程序的应用速度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 物联网实践教程(终章):微信小程序结合OneNET平台MQTT实现51/STM32单片机智能控制与温度等数据实时显示【微信小程序篇】

    本项目教程总共分为四节 1.创建OneNET新版MQTT设备:为微信小程序与单片机通信打基础(微信小程序通信单片机前置任务) 2.ESP8266-01s入门:烧录AT固件与OneNET MQTT通信教程包含MQTT.fx1.7.1教程(微信小程序通信单片机前置任务) 3.物联网实践教程:微信小程序结合OneNET平台MQTT实

    2024年02月03日
    浏览(96)
  • 分析一个项目(微信小程序篇)一

    分析一个项目讲究的是如何进行对项目的解析分解,进一步了解项目的整体结构,熟悉项目的结构,能够知道每个组件所处在哪个位置,发挥什么作用。 本次所介绍的是微信小程序项目(甑选商场): 其首页页面如下: 其分类页面如下: 其发现页面如下: 其购物车页面如

    2024年01月16日
    浏览(41)
  • 【微信小程序篇】- 多环境(版本)配置

    最近自己在尝试使用AIGC写一个小程序,页面、样式、包括交互函数AIGC都能够帮我完成(不过这里有一点问题AIGC的上下文关联性还是有限制,会经常出现对于需求理解跑偏情况,需要不断的重复强调,并纠正错误,才能得到你想要的内容)。 因为最近某些原因,所处的环境网络

    2024年02月11日
    浏览(37)
  • 分析一个项目(微信小程序篇)三

    目录 接下来分析接口方面: home接口: categories接口:  details接口:  login接口: 分析一个项目讲究的是如何进行对项目的解析分解,进一步了解项目的整体结构,熟悉项目的结构,能够知道每个组件所处在哪个位置,发挥什么作用。 首先对于基础接口定义为本地接口:$h

    2024年02月02日
    浏览(39)
  • 分析一个项目(微信小程序篇)二

    目录 首页: 发现: 购物车: 我的: 分析一个项目讲究的是如何进行对项目的解析分解,进一步了解项目的整体结构,熟悉项目的结构,能够知道每个组件所处在哪个位置,发挥什么作用。 接下来我们进一步分析本次项目 : 各个页面的分布情况: 其页面如下:   搜索框

    2024年02月03日
    浏览(35)
  • 【前端高频面试题--微信小程序篇】

    🚀 作者 :“码上有前” 🚀 文章简介 :前端高频面试题 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 【前端高频面试题–HTML篇】 【前端高频面试题–CSS上篇】 【前端高频面试题–CSS下篇】 【前端高频面试题–JS上篇】 【前端高频面试题–JS下篇】 【前端高频面试题–

    2024年02月20日
    浏览(33)
  • 微信小程序篇之与vue有何不同

    大家好!又怀着兴奋的心情去学习了微信小程序,框架这个东西嘛,随着时代的新潮一波又一波的到来,一波又一波的被冲走。为什么要拿vue与小程序开发做对比呢? 这是因为我相信大家不会在没有学习到vue之前就把小程序给学习了,哈哈哈。这篇文章最好给已经接触过别的

    2024年02月09日
    浏览(39)
  • uni-app启动小程序篇(字节,微信)

    uni-app启动小程序篇 uni-app在字节工具小程序启动 1.1 在Hbuild X点击运行, 进入运行设置 1.2 进入运行设置后,设置字节小程序的运行位置   1.3 以上配置完成后,点击运行到小程序   1.4 启动成功后 复制该地址   1.5 打开字节小程序,选小程序,点击新建   1.6 进入后点击导入项目,将刚

    2024年02月11日
    浏览(45)
  • 如何提高小程序搜索排名

    比如我们开发了一个自己的小程序,但是在微信上面搜索不到或者排名不是靠前的,这个是什么原因呢? 是根据你搜索的是否命中,你小程序的浏览量和小程序评分来综合决定的。 那么我们如何给自己的小程序评分呢?其实也很简单。 第一步,搜索小程序 比如 火车

    2024年02月11日
    浏览(41)
  • 微信小程序开发系列(十三)·如何使用iconfont、微信小程序中如何使用字体图标

    目录 1.  如何使用iconfont 2.  微信小程序中如何使用字体图标 3.  背景图的使用         在项目中使用到的小图标,一般由公司设计师进行设计,设计好以后上传到阿里巴巴矢量图标库,然后方便程序员来进行使用。         小程序中的字体图标使用方式与 Web 开发中

    2024年03月20日
    浏览(74)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包