꿈꾸는 개발자의 블로그
[React] Typescript + useRef (Forwarding Refs) : HTMLInputElement 요소 받아오기 본문
Programming/React
[React] Typescript + useRef (Forwarding Refs) : HTMLInputElement 요소 받아오기
aldrn29 2022. 6. 29. 02:02리액트에서는 되도록 돔탐색을 하지 않는 것이 좋다고 한다. 그래서 useRef를 사용해보았다. 전달하는 대상이 Html 엘리먼트가 아닌 컴포넌트 타입이라면 ref를 전달하기 위해 아래와 같이 사용하는 것이 좋겠다!
useRef : HTMLInputElement 요소 받아오기
- import useRef
- React ref를 생성하고 ref 변수에 할당
- ref를 JSX 속성으로 지정해서 ref={ref}으로 전달
이러한 과정을 거치면, ref.current는 DOM 노드를 가리키게 된다!!
이전 코드
더보기
import React from "react";
const Test = () => {
const handleScroll = () => {
const screenHeight = document.querySelector("#intro").clientHeight;
...
}
return (
<div id="intro">
)
}
export default Test;
수정한 코드
import React, { useRef } from "react";
const Test = () => {
const ref = useRef<HTMLInputElement>();
const handleScroll = () => {
const screenHeight = ref.current.clientHeight;
...
}
return (
<div ref={ref}>
)
}
export default Test;
참고 문서
https://ko.reactjs.org/docs/forwarding-refs.html
728x90
728x90
'Programming > React' 카테고리의 다른 글
[React] Kakao Map API 사용하기 (0) | 2022.07.30 |
---|---|
[React] Kakao Map API 사용하기 : API KEY 발급 받고 적용하기 (0) | 2022.07.27 |
[React] <video> 태그를 이용한 동영상 재생하기 (0) | 2022.06.23 |
[React] Mui styled-components 설치 및 구현 방법 (0) | 2022.06.18 |
[React] TypeScript + 객체 값 순회하기 (0) | 2022.06.16 |
Comments