react hooks에서 간단한 input 을 사용하는 구조에서, focus()를 사용하기 위하여
해당 input 태그에 useRef 를 삽입하고, const inputRef = useRef(null)로 선언을 하였는데,
focus 처리시, Object is possibly 'null' 이라는 타입스크립트 오류가 났습니다.
오류 메시지
before
import React, { useRef } from "react";
const Login = () => {
const inputRef = useRef(null);
useEffect(() => {
inputRef.current.focus(); //오류 발생
}, []);
return (
<form onSubmit={onSubmitLogin}>
<input
ref={inputRef}
...
/>
...
</form>
);
};
export default Login;
해결 방법
const inputRef = useRef<any>();
after
import React, { useRef } from "react";
const Login = () => {
const inputRef = useRef<any>(); //코드 수정
useEffect(() => {
inputRef.current.focus(); //정상 작동
}, []);
return (
<form onSubmit={onSubmitLogin}>
<input
ref={inputRef}
...
/>
...
</form>
);
};
export default Login;
반응형
'개발 > React' 카테고리의 다른 글
[react] react-datepicker 사용법 (0) | 2021.06.30 |
---|---|
[react] 리액트 탭 구현하기(ft. tailwind) (0) | 2021.06.24 |
[react] 리액트로 css, js로 도넛차트 구현 (0) | 2021.06.18 |
[react] 리액트 tailwind 다이얼로그(모달, 팝업) 구현 (0) | 2021.06.18 |
[react] react 모달창(팝업창) 구현 (0) | 2021.06.12 |
댓글