- WXSS
- JS环境
- MINA框架
- 启动小程序
- 生命周期
- 页面路由
- 事件
WXSS
WXSS相比CSS的差异:
- 尺寸单位是rpx
- 支持@import样式导入
- 只支持较少的选择器(具体见官网)
JS环境
不同平台有细微差异,它们支持的ECMAScript版本会有不同,可能导致在IDE里运行好好的,真机上出现bug。所以本地开发完,最好在IDE上试试真机调试功能:
- IOS用JavaScriptCore运行JS跑在WKWebView上
- Android用X5内核运行JS
- IDE用nwjs运行JS
MINA框架
微信团队为小程序提供的框架命名为MINA,上游分为View视图层和App Service层,下游是常规的JSBridge调用Native能力:
启动小程序
生命周期
小程序生命周期:onLaunch,onShow,onHide,onError
页面生命周期:onLoad,onShow,onReady(页面首次渲染完毕),onHide,onUnload等。
每当小程序可能被销毁之前,页面回调函数 onSaveExitState 会被调用。如果想保留页面中的状态,可以在这个回调函数中“保存”一些数据,下次启动时可以通过 exitState 获得这些已保存数据。
页面路由
事件
事件分捕获和冒泡阶段。捕获用capture-bind,capture-catch,冒泡用bindtap,catchtap。其中带catch表示会阻止后续捕获或冒泡。
小程序用wx.onMemoryWarning监听内存告警事件,进行必要的内存清理。