특정 DOM을 가리킬 때 사용하는 Hook 함수.
Ex. 포커스 설정, 특정 엘리먼트의 크기/색상 변경 등..
ref는 JS의 getElementById()처럼, component의 어떤 부분을 선택할 수 있게 해주는 방법이다.
리액트에 있는 모든 component는 reference element를 가지고 있어서,
어떤 component에 ref={변수명}
을 넣어주면, 해당 component를 참조하게 된다.
import React, { useRef } from "react";
const App = () => {
// 1. Ref객체 만들기
const here = useRef();
2. focus( ) DOM API 호출
setTimeout(() => here.current.focus(), 3000);
return (
<div>
<h1>Hello</h1>
// 2. 원하는 곳에 ref 값으로 설정하기
<input ref={here} placeholder="how are you" />
</div>
);
};
export default App;
1) useRef( )를 사용해 Ref객체 만들기
2) 해당 객체를 활용한 작업 설정 .current.focus()
3) 만든 Ref객체를 선택하고 싶은 DOM에 ref 값으로 설정하기
-> Ref객체의 .current값은 선택한 DOM을 가리키게 된다!
+) useRef에 파라미터를 넣어주면, 이 값이 .current의 기본 값이 된다!