function컴포넌트에서 ref는 props로 넘겨줄 수 없다
forwardRef로 감싸주고 두번째 인자로 ref를 넘겨줘야한다
(App.js)
function App() {
const modalRef = useRef(null);
return (
<>
<Form modalRef={modalRef} /> // 여기에 modalRef 전달
<Modal ref={modalRef} />
</>
);
}
export default App;
(Modal.jsx)
import React, { forwardRef } from "react";
const Modal = (props, ref) => {
return (
<dialog ref={ref}>
~
</dialog>
);
};
export default forwardRef(Modal);
// const Modal = forwardRef((props, ref) => {
// return (
// <dialog ref={ref}>
// ~
// </dialog>
// );
//});
//export default Modal;
1. <Form modalRef={modalRef}/>
2. <Modal ref={modalRef} />
const Modal = forwardRef((props, ref) => {
return (
<dialog ref={ref}>
</dialog>
);
});