微信小程序微信小程序 生命周期和页面的生命周期详细介绍生命周期和页面的生命周期详细介绍
主要介绍了微信小程序 生命周期和页面的生命周期详细介绍的相关资料,需要的朋友可以参考下
微信小程序微信小程序 生命周期和页面的生命周期详解:生命周期和页面的生命周期详解:
1.小程序的生命周期小程序的生命周期——App.js
App() 必须在 app.js 中注册,且不能注册多个。所以App()方法在一个小程序中有且仅有一个。
App() 函数用来注册一个小程序。接受一个 object 参数,其指定小程序的生命周期函数等。先上代码:
App({
onLaunch: function () {
console.log('App onLaunch');
},
onShow:function (){
console.log('App onShow');
},
onHide:function(){
console.log('App onHide');
},
onError:function(){
console.log('App onError');
},
getPics: function() {
return this.globalData.picList;
},
globalData:{
picList: [] // 图片列表
},
globalName: 'tangdekun'
});
最外层的整个{ }就是一个object 参数。
通过表格的形式看App()中的object参数说明:
属性属性 类型类型 描述描述 触发时机触发时机
onLaunch Function
生命周期函数–
监听小程序初
始化
当小程序初始化完成时,会触发 onLaunch(全局只触发一次)。
onShow Function
生命周期函数–
监听小程序显
示
当小程序启动,或从后台进入前台显示,会触发 onShow
onHide Function
生命周期函数–
监听小程序隐
藏
当小程序从前台进入后台,会触发 onHide
onError Function 错误监听函数 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息
其他 Any
开发者可以添加任意的函数或数据到 Object 参数中,用 this 可以访问,上面的getPics就是函数, globalName是数
据,这里面的函数和数据都是全局的。调用方式:在Pager中通过getApp()方法得到App对象并获得全局的数据和调
用全局的函数
将原有的app.js中替换为上面的代码,首次打开小程序,可以在Log信息中看到以下Log信息,会看到onShow()方法会执行两次
App onLaunch
App onShow()
App onShow()
前台、后台定义: 当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或
再次打开小程序,又会从后台进入前台。
只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。
注意:注意:
1.不要在定义于 App() 内的函数中调用 getApp() ,使用 this 就可以拿到 app 实例。
2.不要在 onLaunch 的时候调用 getCurrentPage(),此时 page 还没有生成。
3.通过 getApp() 获取实例之后,不要私自调用生命周期函数。
2.页面的生命周期页面的生命周期
Page() 函数用来注册一个页面。接受一个 object 参数,其指定页面的初始数据、生命周期函数、事件处理函数等。
生命周期函数
onLoad: 页面加载
一个页面只会调用一次。