【小程序】生命周期与app对象的使用
小程序的生命周期与app对象的使用
APP的生命周期
App()
函数用来注册一个小程序。接受一个 object 参数,其指定小程序的生命周期函数等。
App()必须在app.js中注册,且不能注册多个。
object参数说明:
当小程序处于前台的状态时,既处于onShow的状态;
而当小程序按了Home键又或者被其他程序完全遮挡时,这是就会进入后台状态,也就是onHide的状态,而如果此时再次进入微信或再次打开小程序,就会从后台进入前台。
如果小程序进入后台一定时间,或者系统资源占用过高,才会被真正的摧毁。生命周期的理解其实和Android里面的生命周期也基本类似。
页面的生命周期
Page()
函数用来注册一个页面。接受一个 object 参数,其指定页面的初始数据、生命周期函数、事件处理函数等。相当于是每个页面的生命周期,其相关生命周期如下:
object参数说明:
跳转页面
在小程序中,跳转页面可以通过下面两个接口实现:
-
wx.navigateTo
这个接口用于打开新的页面;或者直接在wxml页面页面使用组件 也可以。
wx.redirectTo
这个接口用于页面重定向,也就是相当于把当前页面替换成一个新的新页面,这时候就无法返回上一个页面了。
注:在使用tabBar时,带有tabBar的页面似乎就无法通过wx.navigateTo
和wx.redirectTo
跳转了。
这时候,可以选择wx.switchTab
进行跳转或者wx.reLaunch
跳转,前者不能传递数据,而后者可以传递数据,但两种方法都不能再返回上一个页面了。
传递数据
如果需要在不同页面当中传递数据,则可以在路径名后加上’?’在添加对应变量名字和数值即可,多个数据的时候则用&&连接。
例如:url='../logs/logs?id=1&&title="你好"
这样就可以将数据传递到logs这个页面,而在logs页面下,通过onLoad下的option就可以接收对应的数据,在进行使用即可。
app对象的使用
通过getApp()来获取app的实例,从而得到相关数据。
1.微信公众平台 | 小程序
https://mp.weixin.qq.com/debug/wxadoc/dev/framework/app-service/app.html