关于在微信小程序中使用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 文档

相关推荐
王林不想说话6 小时前
React自定义Hooks
前端·react.js·typescript
gustt7 小时前
React 跨层级组件通信:从 Props Drilling 到 useContext 的实战剖析
前端·react.js
社恐的下水道蟑螂8 小时前
深入理解 React 中的 Props:组件通信的桥梁
前端·javascript·react.js
留简8 小时前
从零搭建一个现代化后台管理系统:基于 React 19 + Vite + Ant Design Pro 的最佳实践
前端·react.js
然麦8 小时前
我的dify被精准攻击了(CVE-2025-55182)
人工智能·react.js
小肥宅仙女9 小时前
告别繁琐!React 19 新特性对比:代码量减少 50%,异步状态从此自动管理
前端·react.js
3秒一个大11 小时前
React 中 Context 的作用与用法:从主题切换案例说起
前端·react.js
AI前端老薛12 小时前
你了解react合成事件吗
前端·react.js·前端框架
玲小珑13 小时前
React 防抖函数中的闭包陷阱与解决方案
前端·react.js
计算机毕设指导613 小时前
基于微信小程序图像识别的智能垃圾分类系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·分类·maven