HOOK组件内使用useRef作用于隐藏的Input为什么会导致ref失效?
https://preview.pro.ant.desig...
v4预览版,【个人中心】 菜单栏下,【标签】这个组件,后边那个+图标点击之后Input没有自动获取到焦点,所以导致失去焦点隐藏Input也失效,必须手动获取下焦点在失去才有效. v2版本没有问题
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
// hooks 执行时异步操作,当你设置显示input之后,有立马执行获取焦点操作,肯定会出问题,试试下面的操作
在github上得到了一个答案是可行的,而且还很简单
setInputVisible(true);
执行之后,组件并不会立即重新渲染,而是会继续执行剩下的语句,所以ref.current
的值仍然是null
,你的那个log应该是打印不出来的。Input
添加autoFocus
应该可以在渲染的时候自动获取焦点