微信小程序 可用性一览

1. 调试
vConsole
微信小程序通过vConsole的形式观察控制台打印。打印到vConsole控制台的是由 JSON 转化的字符串。这还是可以起到调试作用的。

Source Map
当es6 转 es5 、代码压缩时会生成 Source Map 的 .map文件。主要用再开发版中,正式包不会有。

2. 运行环境
微信小程序运行在 Android iOS(iPhone/iPad) 和 用于调式的开发者工具
1. 在 iOS 上,小程序逻辑层的 javascript 代码运行在 JavaScriptCore 中,视图层由 WKWebView 来渲染的,环境有 iOS8开始
2. 在安卓上,javascript 运行在 X5 JSCore / V8,视图层 chrome提供。
3. 开发工具上,javascript 运行在NW.js 中,视图层 chrome提供

运行限制
小程序不支持动态执行JS代码,
1. eval 执行JS 代码
2. new Function 创建函数

平台差异
javasrcipt 语法和 API 支持不一致,wxss 渲染不一致,需要真机调试保证鲁棒性

es6支持情况
两个不支持,Array.values 和 Proxy

3. 运行机制
冷启动:第一次打开,或者杀进程后的第一次打开
热启动:除了冷启动之外的启动

更新机制:
小程序在冷启动之后如果发现新版本,异步下载。但是这一次还是使用本地的包,但是会用下载的包进行替代。然后下一次冷启动之后就会运行新版本。 wx.getUpdateManager 马上使用新版本的接口。一般用不到,除非后台大换血

再次打开逻辑:打开首页 或者指定页面
4. 性能
优化建议
1. setData。视图层和逻辑层的通信并不是直接共享,可能导致问题的原因有:频繁的去setData,每次setData都传递大量新数据,后台的时候去setData
2. 图片资源
3. 代码包大小
4. 清理无用资源

分析工具
性能工具 Trace ,这个需要优化的时候再看,精力有限

猜你喜欢

转载自www.cnblogs.com/lankongclub/p/10563553.html