小程序开发架构及原理
小程序宿主环境差异
iOS
JavaScriptCore WKWebView 渲染
android
X5内核
IDE 微信开发者工具
nwjs chrome和nodejs渲染
MINA框架
View(视图层): Page(WXML WXSS)
JSBridge: 微信能力、离线存储、网络请求...
App Service(逻辑层): Manager API
小程序运行机制
启动 首次打开时间比较慢
冷启动:有新版本,会下载新版本,下次打开则为新版本
热启动:用户已经打开过程序,一段时间内再次打开
加载
CDN 请求最新代码包,下一次启动时使用
小程序生命周期
应用生命周期
onLanch->onShow->onHide->onError
页面生命周期
onLoad->onShow->onReady->onHide->onUnload
两个线程:AppService Thread 、View Thread
页面路由
路由方式 | 页面栈表现 |
---|---|
初始化 | 新页面入栈 |
打开新页面 | 新页面入栈 |
页面重定向 | 当前页面出栈,新页面入栈 |
页面返回 | 页面不断出栈,新页面入栈 |
Tab切换 | 页面全部出栈,只留下新的Tab页面 |
重加载 | 页面全部出栈,只留下新的页面 |
网友评论