前言: 因为要做table 滚动条高度缓存,所以用了umi-plugin-keep-alive插件,导致被包裹的子组件useffect失效。故用父组件使用ref 调用子组件的getList方法实现页面更新。
但是项目用的Dva,和useRef 一起用ref会失效。
解决方法:在connect 方法的第四个参数加 forwardRef: true,即可实现透传效果,其余部分不变。

其余部分用法不变。
父组件:

子组件:

参考文章:
react-redux的connect与React.forwardRef结合ref失效的问题