小程序 app 的启动 → 运行 → 关闭
页面 page 的加载 → 渲染 → 卸载
组件 component 的加载 → 渲染 → 卸载
onLaunch()
onShow()
onHide()
onError()
App({ globalData: { // 全局数据 // 其他页面使用 const app = getApp()可以获取app所有的数据 }, onLaunch(){ // 启动;只触发1次 // 本地数据获取和更新 }, onShow(option){ // 显示、恢复;可以多次触发 // 进入前台运行 }, onHide(){ // 隐藏、最小化;可以多次触发 // 进入后台运行 }, onError(msg) { console.error(msg) } })
onLoad()
onShow()
onReady()
onHide()
onUnload()
Page({ data:{}, onLoad(option) { // 1 // 页面加载时触发 // 初始化页面数据 // 获取页面传参 // 1个页面只调用1次 // 如果页面有数据更新,请使用 onShow }, onShow() { // 2 // 可以多次触发 // 场景:返回时,需要更新的页面,如修改昵称后返回 }, onReady() { // 3 // 页面初次渲染完毕后触发 // 可以与视图层交互,如修改导航栏标题 }, onHide() { // 可以多次触发 }, onUnload() { // 触发1次 } })
data:{ products: [] }
data:{ products: app.globalData.products // 错误 }
data: { products: (function () { return app.globalData.products })() }
onLoad(options) { if (app.globalData.products && app.globalData.products.length > 0) { this.setData({ products: app.globalData.products }) } else { this.loadData() } }
Component({ lifetimes: { created: function () {}, attached: function () {}, detached: function() {} } })