一个编译小程序的小技巧:利用“编译模式”实现页面单独编译,小程序编译工具

4747 2242 2022-10-16

本文讲述了一个编译小程序的小技巧:利用“编译模式”实现页面单独编译,小程序编译工具。

通常来说,在编写小程序是,按下 ctrl+s 保存文件,小程序开发者工具会把整个工程都编译一遍,并默认打开小程序的首页。

如果我目前在开发“商品详情页”,进入“商品详情页”的路径是“首页 - 商品列表 - 商品详情页”。当保存文件、编译完成之后,开发者工具默认打开了首页,而我需要查看“商品详情页”的展示效果,我就需要再按照“首页 - 商品列表 - 商品详情页”的路径进入“商品详情页”。还是挺繁琐的。

那么,可不可以只编译“商品详情页”,然后编译完之后直接打开“商品详情页“呢?答案是可以的

步骤

点击“普通编译”,会弹出一个对话框

选择“添加编译模式”,会弹出一个对话框,填入如下信息

然后选择编译模式,这样就可以实现只编译“商品详情页”,编译完之后直接打开“商品详情页“的需求了

开发者在使用常见的第三方小程序框架如 tarokboneuniapp会发现各家框架厂商都宣称通过自己的框架能编译出不同平台下最好用最流畅的小程序开发者受限于精力与时间不够也无法对其进行足够仔细地辨别与区分

在本文中邀请了 FinClip 前端开发工程师蒋雪使用不同的编译框架编译出不同平台的小程序 DEMO并在 iOS 与 Android 设备中进行实际体验对比针对小程序的稳定性框架支持度列表渲染性能操作系统支持度组件支持度与跨平台性进行综合对比从而帮助开发者找出最适合自己的小程序平台与框架

测试设备与环境

本次测试中使用了 FinClip 日常测试环境中的三款设备机型分别是

iPhone XS系统版本为 iOS 13.5

三星 SM-J3300系统版本为 Android 9

荣耀 50 JLH-AN00系统版本为 Android 11

本次使用的宿主 App 与版本如下

微信iOS 端版本为9.0.17Android 端版本为 8.0.18

支付宝iOS 端版本为 10.2.53Android 端版本为 10.2.53

今日头条iOS 端版本为 8.6.2Android 端版本为 8.6.6

百度iOS 端版本为 13.2Android 端版本为 13.2

FinClip AppiOS 端版本为 2.35.2Android 端版本为 2.35.3

本次测试使用的 DEMO 如下

taro-uikboneuniapp 官方 demo

测试流程

为了保证最终能够得到公平一致的测试结果我们使用了如下的评测方式

image.png

相同的测试流程才能保证公平的测试结果

DEMO 与列表渲染测试

Taro

我们从 Github 中-了官方的示例 DEMO 文件并在各个 IDE 中进行编译预览

image.png

image.png

image.png

image.png

image.png

首先是在 IDE 中进行编译展示通过上图可以看出各家小程序平台对于该 DEMO 都能够进行正常的渲染与体验但是在实际测试过程中我们发现支付宝小程序 IDE 在进入视图页面时会提示报错在使用真机打开视图页面时也会报错如下图

image.png

使用支付宝 IDE 进入视图界面时会报错

当使用真机预览进入高阶页面时还会遇到底部日历遮挡的问题

image.png

月末的日历组件无法全部显示

此外我们为了测试 Taro 对于列表的渲染能力还使用了 taro-msparis 这个项目Msparis 项目基于 Taro构建了一个时装衣橱的项目演示涉及了一个电商平台完整的业务逻辑和功能点分别使用真机在首次渲染更新列表的情况下进行多次测试得出结果如下

image.png

值得一提的是在使用三款手机进行真机测试时头条小程序均无法正常运行使用三星手机打开百度智能小程序时也无法正常渲染

kbone

我们从 Github 中-了由 DCloud 提供的 kbone 示例 DEMO 文件并在 IDE 中进行编译预览

image.png

image.png

仅有微信开发者工具与 FIDE 可完成小程序编译

同样我们分别使用真机在首次渲染更新列表的情况下进行多次测试得出结果如下

image.png

由于 kbone 仅支持微信小程序语法因此仅在微信开发者工具与   FIDE 中进行了测试支付宝官方提供了 Antmove但尝试后发现依然无法编译

uniapp

我们从 Github 中-了官方的示例 DEMO 文件并通过 uniapp 进行跨端编

image.png

按照不同平台的要求输出对应的小程序并在各个 IDE 中进行编译预览

image.png

image.png

image.png

image.png

image.png

除了支付宝小程序无法编译都可以正常运行

在 IDE 中进行编译展示时除了支付宝小程序 IDE 会提示编译失败以外剩下的小程序 IDE 都完成了对应的编译与预览操作此外我们也使用了 uniapp 的 DEMO 对于列表渲染进行多次测试测试方式依然是使用真机在首次渲染更新列表的情况下进行多次测试得出结果如下

image.png

综合对比

根据前文测试与对比结论我们分别基于稳定性小程序框架支持度列表渲染性能操作系统支持度组件支持度跨平台性进行综合考量与对比

稳定性

根据三种机型的测试体验在头条小程序与百度智能小程序中安卓机型的运行效果是不稳定的尤其在头条小程序中Taro 框架的列表展示 DEMO 三台机器均无法正常打开而百度小程序则会出现在安卓低端机型中无法正常打开的情况

👉 根据本次测试结果稳定性排序如下

微信小程序 = FinClip = 支付宝小程序 > 百度智能小程序 > 头条小程序

小程序框架支持度

可以看出各平台都已经支持了在 Taro 和 uniapp 框架下的小程序但个别功能依然存有 Bug在头条小程序中可以运行简单的 DEMO但复杂 DEMO 安卓端几乎全军覆没

而在 kbone 框架中只有微信小程序与 FinClip 支持运行且都能正常运行体验当我们使用 Antmove 工具转换后依然无法在支付宝小程序中正常运行

👉 根据本次测试结果框架支持度排序如下

微信小程序 = FinClip > 支付宝小程序 = 百度智能小程序 > 头条小程序

列表渲染性能

根据测试数据微信小程序FinClip支付宝小程序在列表渲染性能上是比较接近的出乎意料的是百度智能小程序在这些 DEMO 测试中渲染耗时最少头条小程序则因表现不稳定暂不参与排序

👉 根据本次测试结果渲染性能排序如下

百度智能小程序 > 微信小程序 = FinClip = 支付宝小程序

操作系统支持度

根据测试结果整体来看当前所有小程序在 iOS 操作系统中的体验是优于Android 操作系统的我们后续将会引入鸿蒙系统进行测试对比

组件支持度

考虑到当前市场中微信小程序的领军地位我们以微信小程序组件对标支持度作为了评比标准之一

👉 根据本次测试结果组件支持度排序如下

微信小程序 >   FinClip > 百度智能小程序 > 头条小程序 > 支付宝小程序

👉 而如果以各平台中组件数量进行排序排序如下

支付宝小程序 > 微信小程序 > 百度智能小程序 > FinClip > 头条小程序

跨平台性

在参与对比的五个小程序平台中只有 FinClip 在支持自身语言之外还同时兼容微信小程序的语言相比支付宝小程序头条小程序而言FinClip 的兼容性更强无须使用代码转换工具就能与微信小程序共用一套代码在上架双平台时也能避免因代码转换所引起的其他问题与 Bug

后记

在设计 FinClip 起初我们有着这样的考虑

在企业数字化转型的过程中已有 Web 应用与 H5 应用将不得不面临需要提升用户体验与业务性能的问题而在转向通过小程序提供服务的过程中又需要如何将在流量平台中已经上架的小程序迁移至自有 App 中如何让自有 App 具备运行小程序的底层容器引擎因此我们希望自己所提供的小程序解决方案不仅需要解决企业当下所面临的小程序迁移问题也需要能够帮助企业考虑到数年内甚至更长而不需要再根据新遇到的问题寻找新的解决方案

此外除了小程序本身的运行能力以外FinClip 还具备对小程序全生命周期进行管理的能力对于与企业内部已有信息系统进行关联也提供了完成自动化定制化支持的相关工具与资源从而能够更可靠可信地帮助企业完成数字化转型这一过程

上文就小编为大家整理的一个编译小程序的小技巧:利用“编译模式”实现页面单独编译,小程序编译工具。

国内(北京、上海、广州、深圳、成都、重庆、杭州、西安、武汉、苏州、郑州、南京、天津、长沙、东莞、宁波、佛山、合肥、青岛)Finclip软件分析、比较及推荐。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:关于APP热更新,一个降本增效的好方法
下一篇:IMS Barter发布对其移动应用程序的动态升级,移动应用的动态发布是什么
相关文章

 发表评论

暂时没有评论,来抢沙发吧~