ybdt1201 2018-09-24 12:45 采纳率: 100%
浏览 7967
已结题

路由都切换了,但componentWillUnmount却不触发,只有某个组件会这样,其他组件可以。

项目中,我切换了路由,每次进入页面时,某个组件componentDidMount都执行了,但切换路由跳转其他页面时,componentWillUnmount却不触发,其他组件都能执行componentWillUnmount?
请问大佬这是为什么,与路由设置有关吗?

  • 写回答

1条回答 默认 最新

  • yaoxinfei 2018-09-25 02:54
    关注

    componentWillUnmount是属于组件生命周期的一部分,setState或者调用props中方法完全可以的.
    不知题主,是否在componentWillUnmount()中先尝试console.log一下,首先你需要确认的是你的组件中的componentWillUnmount()是否被触发了.
    我分析,多半是因为componentWillUnmount()根本就没有被触发,而导致改方法其中的业务逻辑没有执行.
    说到为什么componentWillUnmount()没有被触发,很有可能是因为你用了 路由 而没有对其中路由栈参数做配置.

    望能帮到你.

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献