1. isLogin부분을 이렇게 바꾸었는데 어떤가요?
const handleUserProfile = async () => {
    try {
      let userProfile = await getUsers();
      setIsLogin(true);
      const { email, profileImageSource } = userProfile;
      setUserData((prevData) => ({
        ...prevData,
        email,
        imageSource: profileImageSource,
      }));
    } catch (err) {
      setIsLogin(false);
      // ..
    }
  };
  1. 고유한 값이 없는 배열 요소들의 경우, key 값을 정해주기 위해서 uuid 패키지 써라 또는 useID(react 내장 함수)
  2. react-router-dom, axios, 상태 관리 라이브러리(recoil, react-query, SWR), styled-components
  3. 에러처리 상황: API호출, 외부 라이브러리 연동
  4. 에러를 처리하는 방법 (catch 문에 뭘 적어야하나?)
  5. 기능구현에 집중 → 반복된 코드들에 공용화/커스텀 훅 사용
  6. post CSS
  7. esLint
  8. dan abramov (덴 아브라모프)님의 블로그(리액트 코어 개발자) https://medium.com/@dan_abramov
  9. 양질의 프로젝트
  10. 채용페이지보며 공기부여 얻기!
  1. 어떤 기술을 사용할 수 있는지 뿐만 아니라, 왜 그 기술을 선택했는지 어떤 고민을 했는지 ㄴ ex. 프로젝트 코드 짜다가 ‘불편함을 느껴서’ → 찾다가 → 발견했다.

  2. 벨로퍼트 <리덕스 잘 쓰고 계시나요?> https://ridicorp.com/story/how-to-use-redux-in-ridi/

    cf. 벨로퍼트와 함께 하는 모던 자바스크립트 https://react.vlpt.us/ / https://learnjs.vlpt.us/