首页 > V2EX > V2EX-求思路, 如何解决 react hook 使用 generator function 报的组件销毁依然改变 state 的错误。
2021
10-14

V2EX-求思路, 如何解决 react hook 使用 generator function 报的组件销毁依然改变 state 的错误。

erwin985211:

大致代码如下

dataSource = React.useMemo(一个 generator function)

let faultState = useInfiniteVirtualScroll({
dataSource,
}) // 自定义 hook 。

retrue ( 根据 faultState 渲染的 jsx)

大致就是这些代码,在组件的 generator function 还未完成时销毁组件,react 会报一个

/Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function./

就是组件都销毁你还改变 state,目前尝试

React.useEffect(() => {
    return () => {
        faultState= null as any
        dataSource = null as any
    }
}, []) 

没有效果,求思路

from V2EX-最新主题 https://ift.tt/2XeCl6K

最后编辑:
作者:分享菌
这个作者貌似有点懒,什么都没有留下。

留下一个回复