关于在微信小程序中使用taro + react-hook后销毁函数无法执行的问题

问题:

在 taro中使用navigageTo() 跳转路由后hook中useEffect 的return函数没有执行

没有执行return函数

框架版本: tarojs: 3.6

react: 18.0

原因: 使用navigateTo() 跳转路由的话并不会销毁页面和组件,会加入一个最大数量为十层的路由栈,之前路由只是被隐藏了, so 没有销毁 肯定就没有执行销毁函数(return);

解决方案:

**1.**改用其他路由跳转方式

redirectTo(): 跳转到目的页面,在当前页面打开

reLaunch(): 关闭所有页面,打开到应用内的某个页面

2. 在taro 提供的专属的生命周期里面处理销毁时间

useDidHide(): 页面隐藏/切入后台时触发。等同于 componentDidHide 页面生命周期钩子。

3. 在navigateTo()的成功函数success里面 写销毁后的相关操作(算是曲线救国操作吧) Taro 文档

复制代码
Taro.navigateTo({
  url: 'test?id=1',
  success: function () {
    // 或者执行当前页面销毁操作需要处理的事
    console.log('currentDestory fffffdestory');
  }
})

官方参考文档:Taro 文档

相关推荐
2501_9219308310 小时前
ReactNative项目OpenHarmony三方库集成实战:react-native-appearance(更推荐自带的Appearance)
javascript·react native·react.js
demo007x11 小时前
如何提高 AI 做小程序的效率?
微信小程序·ai编程·claude
悟空瞎说15 小时前
React 19 带来了诸多创新
前端·react.js
im_AMBER15 小时前
高并发下的列表乱序与文档同步
前端·react.js·架构
Csvn18 小时前
组件设计模式(上) 受控/非受控组件与容器组件
react.js
早點睡39019 小时前
ReactNative项目OpenHarmony三方库集成实战:react-native-video
javascript·react native·react.js
請你喝杯Java19 小时前
基于 TypeScript React Next.js 的 AI 产品技术栈调研报告
javascript·react.js·typescript
kaolagirl20 小时前
微信小程序-滑动拼图安全验证
安全·微信小程序·小程序
2501_9339072121 小时前
如何选择宁波小程序服务,保障品质与效率?
科技·微信小程序·小程序
薛定e的猫咪21 小时前
AI 时代前端框架选型:React 核心原理与 SocialVibe 项目实战解析
人工智能·react.js·前端框架