새끼 개발자의 Life is egg

[MUI] Modal 안의 TextField에 useRef focus 안될 때 본문

개발's egg/Javascript

[MUI] Modal 안의 TextField에 useRef focus 안될 때

현z 2023. 10. 6. 10:49

mui 모달을 띄울 때 TextField에 포커스를 주고 싶어서 useRef를 썼다.

 

inputRef.current.focus();

 

근데 에러가 남;

Cannot read properties of null (reading 'focus')

 

inputRef 가 null 이더라고?

 

모달 안에 있어서 렌더링이 아직 안됐구나 싶어서

useEffect 를 써서

모달 오픈됐을 때... inputRef.current가 변경됐을때...

ref current를 찾으려고 했는데도 

계속 null 이었다.

 


 

방법은

disablePortal

속성을 주는 것...

 

<Modal>이나 <Dialog> 에 주면 된다.

 

dom 구조에서 하위 요소가 상위 요소 아래에 배치되는지 여부를 결정하는 속성이고,

기본값은 false 이다.

 

내가 모달을 오픈하는 컴포넌트 하위에 이 모달이 있어야 했는데

같은 계층에 있어서 통신에 문제가 있었던 듯

 


 

그리고 TextField 에 useRef 를 사용할때는

ref={inputRef}

ref 가 아니라

 

inputRef={inputRef}

inputRef 를 사용한다

Comments