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

为啥前一个渲染的数据会在后一个渲染的数据到达前,会留下拖影,如何解决

  •  
  •   soclearn ·
    minlearn · 2023-11-19 16:07:00 +08:00 · 1069 次点击
    这是一个创建于 400 天前的主题,其中的信息可能已经有所发展或是发生改变。

    react 同一个组件,渲染来自 redux state 里的不同数据,比如一个文章组件显示 state 不同 post

    为啥前一个渲染的数据会在后一个渲染的数据到达前,会留下拖影,然后才显示后一个渲染数据

    如何在前一个组件的 unmount 里消除掉该份数据,

    这属于啥课题,google “react force clean up state when component unmount” “react dont cleanup effect when unmount” “react dont clean up previous render”

    都找不出答案

    用的 class component,没有使用 use hooks

    第一次用 react ,请大佬赐教

    4 条回复    2023-11-20 01:05:17 +08:00
    iOCZS
        1
    iOCZS  
       2023-11-19 17:18:54 +08:00
    talk is cheap, show me the code
    sillydaddy
        2
    sillydaddy  
       2023-11-19 20:07:10 +08:00
    贴一下关键代码吧
    debuggerx
        3
    debuggerx  
       2023-11-19 20:21:09 +08:00 via Android   ❤️ 1
    加 loading 组件来控制啊
    soclearn
        4
    soclearn  
    OP
       2023-11-20 01:05:17 +08:00
    @debuggerx

    render()
    前面有简单的 if (!post) { return <div>loading...</div> }
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5136 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 03:49 · PVG 11:49 · LAX 19:49 · JFK 22:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.