导语:
最近刚接触到小程序,在测试时发现退出小程序后小程序中的数据并没有得到释放,因此当我再次打开小数据时,数据并没有得到初始化。那么我们该如何解决这个问题呢?
解决思路:
首先在小程序data数据中声明一个变量isClose,默认为true,用于判断是否是从小程序入口打开。当用户点击跳转页面或关闭小程序时,会触发OnHide函数,此时,在该函数中将判断isClose isTrue,表示关闭之后再打开。当页面跳转时,首先会将isClose设置为false,这样触发OnHide函数时,isClose is false 并不会执行,然后进入跳转的页面,再由页面进行返回。
在OnUnload函数中,设置一个定时器,200ms之后将isClose改为true,这样当关闭小程序并再次进入时,isClose依然为true,判断为首次进入页面。
小程序的生命周期函数如下:
1.1 监听页面加载
onLoad: function (options) {},
一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数。
1.2 监听页面初次渲染完成
onReady: function () {},
一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
1.3 监听页面显示
onShow: function () {},
每次打开页面都会调用一次。
1.3 监听页面隐藏
onHide: function () {},
当navigateTo或底部tab切换时调用。
(学习视频分享:php视频教程)
1.4 监听页面卸载
onUnload: function () {},
当redirectTo或navigateBack的时候调用。
微信小程序的 app.js 中独有的函数
2.1 监听小程序初始化
onLaunch:function () {},
当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
2.2 错误监听函数
onError:function () {},
当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息
相关推荐:小程序开发教程
以上就是小程序生命周期函数有哪些的详细内容,更多请关注自由互联其它相关文章!