useRef

useRef

1. useRef

 - React 라이브러리에서 제공하는(Hook)

 - 함수형 컴포넌트 내에서 DOM 요소 or 값을 참조할 때, 사용되는 도구

 - 이를 통해, 컴포넌트의 렌더링 사이클과는 독립적으로 값을 저장유지 가능

    → useState와 달리, 리렌더링을 하지 않고 값을 저장 유지

 

2. 예시

 - RefEx.js

import React, { useState, useRef } from "react";

function RefEx() {
  const formInputNoRef = useRef(null);
  const [no, setNo] = useState("");

  const notice = () => {
    formInputNoRef.current.focus();

    if (!no) {
      alert("숫자를 입력해주세요.");
      return;
    }

    alert(`당신이 입력한 숫자는 ${no} 입니다.`);
    setNo("");
  };

  return (
    <>
      <form
        onSubmit={(e) => {
          e.preventDefault();
          notice();
        }}
      >
        <input
          ref={formInputNoRef}
          type="text"
          placeholder="숫자"
          value={no}
          onChange={(e) => setNo(e.target.value)}
        />
        <button>실행</button>
      </form>
    </>
  );
}

export default RefEx;

 

 - App.js

import RefEx from "./RefEx";

import "./App.css";

const App = () => {
  return (
    <>
      <RefEx />
    </>
  );
};

export default App;

 

 - 결과

    - 숫자를 입력하지 않고 실행 버튼 클릭 시, 창이 뜨면서 다시 input 태그에 focus

    - 숫자를 입력하고 실행 버튼 클릭 시, 창이 뜨면서 다시 input 태그에 focus

'Front-End Study > React' 카테고리의 다른 글

React.memo  (0) 2023.08.11
useMemo  (0) 2023.08.11
props  (0) 2023.08.02
JSX  (0) 2023.07.28
useMemo  (0) 2023.07.10