-npx create-react-app 프로젝트명
- 라우터 > npm i react-router-dom
- Emotion > npm i @emotion/react
- Recoil > npm i recoil
- React Icons > npm i react-icons
- Sweetalert2 > npm i sweetalert2
- 리액트 모달 라이브러리 > npm i --save-dev @types/react-modal
- npm i axios 리액트 json 자동 변환 라이브러리
- npm install react-icons 리액트 아이콘 라이브러리
- npm i react-modal 리액트 모달창
- https://react-select.com/home 셀렉트관련 사이트
- Ctrl + Shift + p
- user settings.json(vscode 사용자 설정) 선택
- 아래 설정 추가
"emmet.syntaxProfiles": {
"javascript": "jsx"
},
"emmet.includeLanguages": {
"javascript": "html"
},#사용자 설정 스니펫
"emotionJsx": {
"prefix": "ej", // 단축키
"body": [
"/** @jsxImportSource @emotion/react */" ,
"import * as s from \"./style\";",
], // 단축키 실행될 몸체
"description" :"이모션 JSX Import"
}- reactjs code snippets
- vscode-color-picker
- vscode-styled-components
- Ctrl + Shift + p
- terminal: select Default Profile 선택
- gitBash 선택
- components
- pagaes
- constants
- styles
- hooks
- configs
- utils
- atoms
- assets => 이미지
- apis(services)
- store
- useState(기본값)
- useEffect(() => {} , [])
- useRef(기본값)
- useMemo(() => 리턴, [])
- useCallback(() => {}, [])
- useRecoilState(atom)
- useNavigate()
- useLocation()
- useParams()
- useSearchParams()
- Component 이름은 대문자로 시작
- 하나의 Component폴더에는 하나의 Component.jsx파일, style.js파일로 구성
- constants 폴더에 들어가는 상수들은 대문자와 스네이크 표기법으로 작성
- 이벤트 함수명은 handle로 시작해서 이벤트 명으로 끝낸다.