小程序中生命周期的解析「附代码」

小程序中生命周期的解析「附代码」

小程序生命周期是指小程序从开始启动到关闭再到被销毁的整个过程中所经历的各个个阶段。这些阶段过程中涉及到的函数,我们就称之为生命周期函数。对于小程序开发来说,掌握小程序的生命周期是非常重要的,因为不同的阶段可以进行不同的操作,完成不同的功能。

1. 小程序生命周期

小程序包含了多个生命周期函数,它们按执行次序可以分为:

onLaunch:小程序初始化时执行,全局只触发一次。

onShow:小程序启动或从后台进入前台显示时触发。

onHide:小程序从前台进入后台时触发。

onError:小程序发生错误时触发。

onPageNotFound:小程序页面不存在时触发。

2. 生命周期函数详解

2.1 onLaunch

onLaunch() 函数在小程序初始化时执行,一般用于获取用户信息、全局变量的初始化等。

App({

onLaunch: function () {

console.log('onLaunch');

}

})

值得注意的是:由于小程序是单页面应用,因此它的生命周期不同于传统的多页面应用。即使在页面切换的过程中,小程序都不会消失。而 onLaunch 函数只有在小程序启动时执行一次,所以不能用于数据的持久化保存。

2.2 onShow

onShow() 函数在小程序启动或从后台进入前台显示时触发,可以在此函数中处理一些需要在页面切换时执行的操作。

App({

onShow: function () {

console.log('onShow');

}

})

值得注意的是:onShow 函数有一个参数 options,它包含了小程序的启动参数。比如从分享链接进入小程序,options 中就包含了分享者的信息。我们可以通过 options 参数来获取这些数据并进行一些处理。

2.4 onHide

onHide() 函数在小程序从前台进入后台时触发,可以在此函数中处理一些需要在小程序关闭时执行的操作。

App({

onHide: function () {

console.log('onHide');

}

})

2.5 onError

onError() 函数在小程序发生错误时触发,可以在此函数中处理一些错误信息的保存、上传等操作。

App({

onError: function (msg) {

console.log('onError', msg);

}

})

值得注意的是:onError 函数有一个参数 error,它包含了错误信息。我们可以通过 error 参数来获取这些数据进行处理。

2.6 onPageNotFound

onPageNotFound() 函数在小程序页面不存在时触发,可以在此函数中处理一些跳转页面的操作,比如跳转到首页。

App({

// ...

onPageNotFound: function () {

wx.switchTab({

url: '/pages/index/index'

})

}

})

值得注意的是:onPageNotFound 函数没有参数,所以我们在这个函数中不能获取到页面的信息。

3. 总结

小程序是一种非常流行的全新开发方式,通过 JavaScript、CSS、HTML 完成小程序的开发和发布,比起传统的 APP 开发方式更加的简单。对于小程序开发者来说,熟悉小程序的生命周期是非常重要的,它可以帮助我们更好地理解小程序的运行机制,从而提高开发效率。