融云IM干货丨uni-app中插件的选择会影响项目性能吗?

融云IM即时通讯
• 阅读 30

插件的选择确实会对UNI-app项目的性能产生影响。以下是一些关键点,说明插件选择如何影响性能:

  1. 逻辑层和视图层的通信折损:非H5端的各个平台,包括App和各种小程序,其逻辑层和视图层是分离的,两层之间通信交互会有折损,导致诸如跟手滑动不流畅。uni-ui在底层会利用wxs等技术,把适当的js代码运行在视图层,减少通信折损,保证诸如swiperAction左滑菜单等跟手操作流畅顺滑。

  2. 自动差量diff数据:在uni-app下,开发App和小程序,不需要手动setData,底层自动会差量更新数据。但如果使用了小程序组件,则需要按小程序的setData方式来更新数据,很难做到自动diff更新数据。

  3. 背景停止:很多ui组件是会一直动的,比如轮播图、跑马灯。即便这个窗体被新窗体挡住,它在背景层仍然在消耗着硬件资源。在Android的webview版本为chrome66以上,背景操作ui会引发很严重的性能问题,造成前台界面明显卡顿。而uni-ui的组件,会自动判断自己的显示状态,在组件不再可见时,不会再消耗硬件资源。

  4. 减少一次性渲染的节点数量:插件市场里的一些自定义下拉刷新的插件,通过wxs实现了更高的性能体验。减少一次性渲染的节点数量可以提高性能。

  5. 优化数据更新:在uni-app中,定义在data里面的数据每次变化时都会通知视图层重新渲染页面。所以如果不是视图所需要的变量,可以不定义在data中,可在外部定义变量或直接挂载在vue实例上,以避免造成资源浪费。

  6. 长列表优化:长列表中如果每个item有一个点赞按钮,点击后点赞数字+1,此时点赞组件必须是一个单独引用的组件,才能做到差量数据更新。否则会造成整个列表数据重载。

  7. 减少引入多余的第三方插件:按需引入插件,避免引入整个库,减小包体积。

  8. 尽量使用原生API:使用UniApp的原生API,避免引入外部库。

综上所述,选择性能优化好的插件,可以减少逻辑层和视图层之间的通信折损,自动进行差量数据更新,避免不必要的硬件资源消耗,从而提升UNI-app项目的整体性能。

点赞
收藏
评论区
推荐文章
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
3年前
API网关 kong 的初步认识
Kong是Mashape开源的高性能高可用API网关和API服务管理层。自2015年在github开源后,广泛受到关注。它基于OpenResty,进行API管理,并提供了插件实现API的AOP。Kong的插件机制是其高可扩展性的根源,Kong可以很方便地为路由和服务提供各种插件,网关所需要的基本特性。Kong支持特性:云原生:与平台无关,K
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
融云IM干货丨如何为UNI-app项目选择适合的插件?
为UNIapp项目选择适合的插件时,可以遵循以下步骤和考虑因素:1.明确需求:首先,明确你的项目需要哪些功能。根据项目需求,确定需要的插件类型,比如UI组件、工具类插件、第三方服务插件等。2.插件市场搜索:访问UNIapp官方插件市场(https://ex
融云IM干货丨如何评估插件对UNI-app性能的具体影响?
评估插件对UNIapp性能的具体影响,可以采取以下几个步骤:1.性能监控工具:使用性能监控工具来测量页面加载时间、渲染性能和内存占用等关键性能指标。例如,可以通过uni.getPerformance()获取页面加载时间、传输时间、总时间等信息。2.页面加载
京东云开发者 京东云开发者
11个月前
性能翻倍!京东亿级体量小程序优化实践 | 京东云技术团队
一、前言小程序性能是指小程序在微信APP或者其他宿主APP中加载和呈现的速度,以及小程序对用户交互的响应程度。性能欠缺的小程序渲染和响应速度较慢,甚至会出现无法正常打开小程序的情况,在不同程度上极大地影响了用户体验,从而导致用户流失。京东购物小程序随着更多
融云IM干货丨uni-app 是否适合大型商业应用开发?
uniapp适合大型商业应用开发,并且已经有许多成功的案例。以下是一些支持这一观点的理由:跨平台兼容性:uniapp能够实现“一套代码,多端运行”,支持iOS、Android、H5以及各种小程序平台,这大幅削减了开发成本并加速了产品迭代。性能和体验:uni
融云IM干货丨uni-app插件生态系统支持跨平台开发吗?
UNIapp的插件生态系统确实支持跨平台开发,以下是一些关键点:1.开放兼容的插件系统:UNIapp积极拥抱社区,创建了开放、兼容的插件系统。插件市场(https://ext.dcloud.net.cn)是UNIapp官方插件生态的集中地,支持前端组件、U
融云IM即时通讯
融云IM即时通讯
Lv1
北京云中融信网络科技有限公司(简称“融云”),是全球互联网通信云服务领创品牌。2014 年由创下亿级日活神话的“飞信”核心团队组建而成,依托沉淀近 20 年的领先技术基因,开创性地将通信技术封装为 SDK 提供给开发者和企业用户,大幅降低了行业对通信功能开发的难度和成本。 自成立以来,融云专注于向开发者和企业提供专业、简单、稳定的即时通讯和实时音视频 PaaS 服务。凭借产品、技术、服务等多方面优势,融云收获了超 80 万开发者和 2200+ 国家政府机关、企事业单位的青睐,支撑起 155 万+ 应用的通信需求,覆盖社交、娱乐、游戏、教育、电商、医疗等各行业场景,并打造出一系列中企出海最佳实践案例。 在全球范围内,融云构建了一张覆盖 245 个国家及地区的通信云网络,设立了多个海外数据中心以及数千加速节点,稳定互联,确保跨地域通信体验更加流畅。基于客户业务需求,融云可提供公有云、私有云、混合云等多种部署模式。 权威咨询机构“艾瑞咨询”数据报告显示,融云即时通讯云市场份额已连续多年稳居第一。
文章
181
粉丝
0
获赞
0