onLoad等生命周期重新执行
发布于 5 年前 作者 yong04 12332 次浏览 来自 问答

点击tab怎么让页面的生命周期重新执行

10 回复

你们有没有碰到过 ,在一些小内存的手机上,比如iphone6,使用小程序一段时间之后,tab页面会重新加载,但是自定义组件加载不出来

在onshow里面再写一遍就好了

写到onShow里不行么,tab的那几个页面因为不会被卸载所以onLoad都是进入的时候执行一遍的,除非是重启微信或者重启小程序。

如果该页面想重新走生命周期,只能将该页面卸载(生命周期函数onUnload页面卸载),当使用重定向方法wx.redirectTo(OBJECT)或关闭当前页返回上一页wx.navigateBack(),触发onUnload。

你重新执行生命周期 无非也不就是 走一些 数据检测流程。那再当前页面页面 监听网络变化 自己走一遍数据变化逻辑咯。理论上是可行的。但是 确实也不知道 你的实际场景 比较难以判断是否可行。

不提倡,小程序支持重新执行吗?断网后再恢复,页面的所有的生命周期都得执行直播才能继续,所以需要生命周期重新执行

如果生命周期函数无法再次执行,只能把所有的数据重新执行一边,这也是最后的办法了

根据你在3楼的需求的话,把你现在写在onload里代码写在onshow就可以了吧

重新redirect到这个页面不就重新执行生命周期了吗

没想到什么场景一定要生命周期重新执行。但是 官方貌似是不提倡自己调用。

回到顶部