开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
native 渲染
性能与优化
小程序全局配置
小程序页面
axml
sjs 语法参考
事件系统
自定义组件
基础能力
基础库
基础库更新日志
开发 > 框架 > 性能与优化 > 概述
收藏
订阅更新
我的文档
设置
小程序的性能与用户访问体验息息相关,小程序良好的性能可以保障用户使用的流畅性,提升用户的使用体验。如果遇到以下问题,可能导致用户流失。
打开一个小程序,在内容显示前,过长的等待时间将直接影响用户的去留。
频繁的错误页会让用户觉得不可靠,降低信任感。
滑动卡顿,点击无响应也会给用户带来不好的交互体验。
因此,在日常业务功能开发时,需要关注小程序的性能,使用户有良好的使用体验。
运行原理
与传统的 h5 应用不同,小程序运行架构分为 webview 和 worker 两个部分。webview 负责渲染,worker 则负责存储数据和执行业务逻辑。
1webview 和 worker 之间的通信是异步的。这意味着当调用 setdata 时,数据并不会立即渲染,而是需要从 worker 异步传输到 webview。
2数据传输时需要序列化为字符串,然后通过 evaluatejavascript 方式传输,数据大小会影响性能。
小程序启动流程简介
概述最新.png

如图所示,小程序启动流程主要包括几个阶段:
1资源准备 当用户点击小程序时,客户端会读取小程序的基本信息和包信息,并遵循一定机制进行包下载、更新。同时进行小程序运行环境的准备,如 worker 线程、webview 容器、原生 titlebar / tabbar、小程序基础库等。
2代码注入 小程序逻辑层注入业务 js 代码并运行,其间会触发小程序的 app.onlaunch / app.onshow 生命周期。渲染层会进行渲染准备。
3首次渲染 小程序框架根据初始数据开始创建页面和自定义组件,并进行绘制,绘制完成时触发 page.onready 生命周期。此刻,认为小程序首屏启动完成。
4业务渲染 在完成首次渲染后,后续根据业务形态,通过 setdata 完成完整页面内容绘制,并触发 firstpaint / firstcontentfulpaint / largestcontentfulpaint。
内容没有解决您的问题?您还可以前往 或 寻求帮助
凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
网站地图