React.useImperativeHandle (通过ref暴露子组件中的方法)
2023-12-27 11:32:48
/**
* 通过ref暴露子组件中的方法
*/
import { forwardRef, useRef, useImperativeHandle } from 'react';
const Input = forwardRef((props, ref) => {
const inputRef = useRef(null);
const handleClick = () => {
inputRef.current.focus();
}
// 把聚焦方法暴露出去
useImperativeHandle(ref, () => {
return {
handleClick
}
})
return (
<input ref={inputRef} />
)
})
function Layout() {
const sonRef = useRef(null);
const handleFocus = () => {
console.log(sonRef.current);
sonRef.current.handleClick();
}
return (
<div>
<Input ref={sonRef} />
<button onClick={handleFocus}>focus</button>
</div >
)
}
export default Layout;
文章来源:https://blog.csdn.net/weixin_50236973/article/details/135239741
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!