首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
React
V2EX  ›  React

react 组件 函数式调用 离开时为什么无法触发生命 componentWillUnmount

  •  
  •   coderabbit · 11 天前 · 359 次点击

    某个 Modal 组件 正常调用

    <Modal/>
    

    这样或以正常监听到生命周期。

    但是以函数式的调用就触发不了生命周期 componentWillUnmount

    modal() {
     Modal.confirm({
     })
    }
    

    这种法写 正常调用还是函数式调用都可以 componentDidMount 是可以触发的。 但是路由变化变形页面函数式调用就导致了 componentWillUnmount 它无法触发。从 componentDidMount 监听的事件 设置的定时器也无法销毁。想问下如何处理它呢!

    3 回复  |  直到 2019-09-08 13:50:57 +08:00
        1
    coderabbit   11 天前
    我又写了个
    ```
    Modal.close();
    ```
    调用组件的页面
    ```
    componentWillUnmount() {
    Modal.close();
    }
    ```
    来全局关闭它!但我还是想通过组件的 componentWillUnmount 来触发这个生命周期! 我去网上看了一圈组件,发现它们的函数式调用 都存在这个问题!
        2
    yuang   10 天前 via Android
    confirm 的写法直接在 onClose 属性中调用不就行了吗
        3
    coderabbit   10 天前
    @yuang 调用你要手要触发一次啊,我想的是 离开页面就销毁
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2435 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 18ms · UTC 00:37 · PVG 08:37 · LAX 17:37 · JFK 20:37
    ♥ Do have faith in what you're doing.