小程序运行环境
运行环境 | 逻辑层 | 渲染层 |
---|---|---|
IOS | JSCore | webview |
安卓 | JSCore | X5浏览器 |
小程序开发工具 | NWJS | Chrome webviwe |
JS 执行环境的不同
浏览器中:ES、DOM、BOM
Node中:ES、NPM、Native
小程序中:ES、小程序框架、小程序API
逻辑层和渲染层
JS工作在逻辑层
wxml和wxss工作在渲染层
小程序的渲染层和逻辑层分别由两个线程管理,两个线程的通信由微信客户端(Native)做中转。
数据驱动
通过JS对象可以渲染DOM上元素,使用JS对象描述DOM最后经过比对通过setData渲染到页面上。
分析工具
浏览器:Performance、Lighthouse
小程序:audit、体验评分、小程序助手[性能分析]板块、和wx.getPerformance
分析指标
FMP:First Meaningful Paint 首屏加载
白屏率:打开某一页面后,白屏的时间和概率
服务可用性:HTTP请求失败率,JSError小程序运行发生的错误。
首屏加载
白屏率
服务可用性
通过线上的异常监控,可以复现一些本地难以复现的bug,比如某个bug只有在特定环境下的特定机型下才能复现,通过异常监控得到bug的复现条件,然后才能更好的去解决问题。