VSCode Indent(들여쓰기) 설정
윈도우 : ctrl + shift + p 또는 맥 : cmd + shift + p 단축키로 명령어 팔레트 창을 실행Indent Using Space 를 2로 설정 (탭 간격을 2로 설정)자동 Fomatting 기능을 사용한다.
VSCode 왼쪽 하단의 톱니바퀴 버튼 - 설정 - 검색창에 formatOnSave 검색 후 체크

VSCode에서 윈도우 : ctrl + shift + p 또는 맥 : cmd + shift + p 단축키로 명령어 팔레트 창을 실행한 다음 open user setting 이라고 입력

아래 코드를 JSON 파일에 추가
{
// ...
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"eslint.workingDirectories": [
{
"mode": "auto"
}
],
}
AirBnB 코딩 컨벤션(ESLint, Prettier)을 참고해 작성한다.
npm run lint 로 포맷 오류 검증해보기함수 이름은 동사 + 명사 형으로 명명한다.
백엔드 통신 API 함수는 HTTP 메서드명 + 명사 형으로 작성한다. (ex. getUserData() → get 요청 , postUserData() → post 요청)
API와 직접 통신하는 코드가 아닌 경우, 데이터를 로드할 때는 fetchXXXData 의 함수명을 사용한다.
// useEffect로 유저 데이터 로드 예시
const fetchUserData = async ()=> {
const data = await getUserData(); // 백엔드 API 통신 함수
}
useEffect(()=>{
fetchUserData(); //useEffect로 컴포넌트에서 데이터를 로드할 때는 fetch 라는 이름 사용
}, [])
컴포넌트에서 import React from 'react' 를 사용하지 않아 밑줄이 쳐진다면 삭제해도 괜찮다.
arrowParens: "always",// 화살표 함수 식 매개변수 () 생략 여부 (ex: (a) => a)
// 닫는 괄호(>) 위치 설정
// ex: <div
// id="unique-id"
// class="contaienr"
// >
htmlWhitespaceSensitivity: "css",
bracketSameLine: true, // 객체 표기 괄호 사이 공백 추가 여부 (ex: { foo: bar })
bracketSpacing: true, // 행폭 설정 (줄 길이가 설정 값보다 길어지면 자동 개행)
printWidth: 80,
proseWrap: "preserve", // 산문 래핑 설정
quoteProps: "as-needed", // 객체 속성 key 값에 인용 부호 사용 여부 (ex: { 'key': 'xkieo-xxxx' })
semi: true, // 세미콜론(;) 사용 여부
singleQuote: true, // 싱글 인용 부호(') 사용 여부
tabWidth: 2, // 탭 너비 설정
trailingComma: "es5", // 객체 마지막 속성 선언 뒷 부분에 콤마 추가 여부
useTabs: false, // 탭 사용 여부
let 과 const 로만 작성