eslint
prettier
eslint 설치하기
npm init @eslint/config
# eslint를 어떤식으로 사용할지에 대한 질문입니다. 우리는 문법과 코드스타일과 문제모두 체크해야하므로 마지막것을 체크합니다.
How would you like to use ESlint ? => To check syntax, find problems, and enforce code style
# 자바스크립트 뭐쓰고 있는지 묻는것 입니다. 우리는 import/export를 지원하는것을 사용합니다.
Waht type of modules does your project use? => Javascript modules (import/export)
# 우리는 리액트를 사용하므로 react를 선태해주시면 됩니다.
Which framework does your project use? => react
# 타입스크립트 사용유무를 확인하는 질문입니다. 우리는 타입스크립트를 사용하므로 yes를 선택합니다.
Does your project use TypeScript? => Yes
# 어디서 실행하는지 확인하는 질문입니다. 우리는 브라우저에서 실행합니다.(노드는 언어가 아닌 실행 프로그램입니다.)
Where does your code run? => Browser
# 인기있는 가이드를 할지, 커스텀을 할 지 선택합니다. 우리는 인기있는 가이드를 따를 것 입니다.
How would you like to define a style for your project? => Use a popular style guide
Which style guide do you want to follow? => Standard
# 설정 파일을 뭘로 만들지 물어보는 질문입니다.우리는 자바스크립트로 만들 것 입니다.
What format do you want your config file to be in? => Javascript
Checking...
# 설치를 진행할 것인지 물어보는 질문입니다.
Would you like to install them now? => yes
# 어떤 패키지 매니저로 설치할지 묻는 질문입니다.
Which package manager do you want to use? => yarn
ESLint extention
이라는 확장프로그램 설치eslintrc.js
파일 안에 아래의 코드 입력parserOptions: {
// 이 부분을 추가해주세요
project: '**/tsconfig.json',
...
},
_app.tsx
파일을 열어보면 빨간 줄이 많이 생겨나 있음'react/react-in-jsx-scope'
와 '@typescript-eslint/consistent-type-imports'
를 복사rules: {
'react/react-in-jsx-scope': 'off',
'@typescript-eslint/consistent-type-imports' : 'off',
}
.eslint.js
파일의 rules 부분에 그대로 붙여넣기 하고 상태를 off로 두면, 더 이상 off 지정한 rule과 관련된 부분에 대해서는 에러메시지가 표출되지 않음ESLint에 잡히는 오류 확인하기
package.json
에 있는 lint
명령어 이용]yarn lint
실행 시 규칙에 위반된 모든 오류가 터미널에 띄워짐+a) types.ts 파일처럼 eslint 검사에서 제외할 파일이 존재하는 경우에는 .gitignore
에 지정하는 것처럼 .eslintignore
파일을 만들어서 그 안에 추가 가능
Prettier (코드 포멧터) 설치
yarn add --dev --exact prettier
.prettierrc.json
설정파일 생성echo {}> .prettierrc.json
yarn add --dev eslint-config-prettier
eslint.js
의 extends에 다음과 같이 입력extends: [
...
'prettier'
]
프로젝트 폴더와 같은 위치에서 최상단 위치에 .vscode
폴더 생성 후 해당 폴더 안에 settings.json
파일 생성
settings.json
파일 안에 아래 내용 입력
{
"editor.formatOnSave":true,
"editor.defultFormatter": "esbenp.prettier-vscode"
}
-husky
는 소스코드를 git에 commit 하기 전에, 기존의 규칙(typescript, eslint, prettier 등)을 지켜가면서 코딩을 진행하였는지 검증해 주는 도구
-규칙에 어긋나는 코드가 있다면 commit을 강제로 거절
, 따라서 실무적으로 더 안정적인 협업을 할 수 있음
*규칙에 어긋나는 코드가 남아있다면 커밋이 되지않음!
husky 설치
ls -al
로 경로 확인 후,.git
이 있는 경로에서 설치 진행!yarn add --dev husky
.husky
폴더 생성npx husky install
npx husky add .husky/pre-commit "yarn lint"
yarn lint
를 실행하게 되고, 만약 오류가 있다면 Commit이 진행되지 않도록 막음