React의 내장 hook을 사용해서 공통된 로직이나 기능을 hook으로 생성할 수 있다. 📚

사용하기


  • 폴더 구조 만들기

    일반적으로 scr/hooks 폴더를 생성하여 작업한다.

  • 필요로하는 로직을 코드로 구현한다.

    하고자 하는 기능에 따라 코드가 매우 다르며 아래는 useState와 onChage 이벤트를 통해 Input을 저장하는 방식을 cumstom hook으로 만든 것이다.

    custom hook의 이름은 use로 시작해야한다. ( 일종의 룰인것 같다.)

    // src/hooks/useInput.js
      
    import React, { useState } from "react";
      
    const useInput = () => {
      const [value, setValue] = useState("");
      
      const handler = (e) => {
        setValue(e.target.value);
      };
      
      return [value, handler];
    };
      
    export default useInput;
    
  • 사용하기

    마찬가지로 기대하는 기능에 따라 사용방법 또한 달라진다. 아래 예시는 위 custom hook의 사용예시이다.

    import React from "react";
    import useInput from "./hooks/useInput";
      
    const COMPONENT_NAME = () => {
      const [title, onChangeTitleHandler] = useInput();
      const [body, onChangeBodyHandler] = useInput();
      
      return (
        <div>
          <input value={title} onChange={onChangeTitleHandler} />
          <input value={body} onChange={onChangeBodyHandler} />
        </div>
      );
    };
      
    export default COMPONENT_NAME;
    

태그:

카테고리:

업데이트: