React

useState의 초기값은 콜백함수로 설정하자

MDanderson 2023. 5. 19. 12:20

useState 훅은 React 컴포넌트가 렌더링 될 때마다 호출됩니다. useState에 전달하는 초기 상태값 인자는 컴포넌트가 렌더링 될 때마다 평가되기 때문에, 함수 호출 같은 표현식을 사용하면 그 표현식은 매 렌더링 때마다 다시 실행됩니다.

 

 const heavyWork =() =>{
        console.log("엄청무거운작업")
        return ['홍길동','김민수']
    }

    const [names,setNames]= useState(heavyWork());
리랜더링 될때마다 heavyWork()가 실행된다.  따라서 아래처럼 바꿔야한다. 

 

댓글수1