dva中connect后通过ref无法调用子组件方法解决思路

环境:dva版本2.4.1,antd版本4.5.3

问题1:tab页获取不到dom结构

图片[1]-dva中connet后通过ref无法调用子组件方法解决思路

解决办法:在tabPane上设置forceRender隐藏时也加载dom结构

问题2:ref指向connect,无法真正指向子节点

1.解决思路:

  • connect加上第四个参数{withRef:true}就可以将connect中被包裹的组件的refs保留下来。
export default connect(({processResource}) => ({
  processResource,
}), null, null, {withRef: true})(Resource)
  • 然后ref中wrappedInstance保留了被包裹的组件方法
 this.resource.current.wrappedInstance.test(dataflowId);

2.参考文档:

https://www.jianshu.com/p/b567056c9d09

3.参考示例:

https://stackblitz.com/edit/dva-example-count-xtbel1?file=TestRef.js,index.js,withProps.js

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容