Skip to content

CHICPRO

  • Life Log
  • Cycling Log
  • Photo Log
    • Portrait
    • Landscape
    • Flower
    • Etc
  • Coding Log
  • Information

VS Code에 ESLint와 Prettier 적용하기

2022-05-30 by 편리

난 주로 PHP 로 개발을 진행하기 때문에 ESLint와 Prettier는 거의 사용을 하지 않지만 간혹 React Native App을 개발하거나 할 때는 사용할 때가 있다. 그리고 자바스크립트 역시 개발을 해야할 경우가 있어서 이번에 제대로 세팅을 진행하게 됐다. 포맷팅은 Prettier가 담당하고 문법오류는 ESLint에서 체크한다.

우선 아래 2개의 Extension을 VS Code에 설치한다.

특히 ESLint의 경우는 Extension만 설치했다고 사용할 수 있는 것은 아니다. 아래 내용처럼 npm install eslint 와 같이 별도로 eslint 패키지를 설치해줘야 한다.

The extension uses the ESLint library installed in the opened workspace folder. If the folder doesn’t provide one the extension looks for a global install version. If you haven’t installed ESLint either locally or globally do so by running npm install eslint in the workspace folder for a local install or npm install -g eslint for a global install.

이제 VS Code settings.json 파일에 설정을 추가해준다.

{
    "[javascript]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode",
        "editor.codeActionsOnSave": {
            "source.fixAll.eslint": true,
        },
        "editor.formatOnSave": true
    },
    "[typescript]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode",
        "editor.codeActionsOnSave": {
            "source.fixAll.eslint": true,
        },
        "editor.formatOnSave": true
    },
    "prettier.configPath": ".prettierrc.js",
    "eslint.useESLintClass": true,
    "eslint.options": { "useEslintrc": false, "overrideConfigFile": ".eslintrc.json" }
}

위 설정은 javascript 와 typescript 파일을 저장할 때 기본 포맷터를 prettier 로 설정하고 문법 오류 등은 eslint로 체크한다는 내용이다. 팀 단위로 협업을 진행하게 되면 prettier 와 eslint 설정이 따로 관리되고 있을 터이기 때문에 공통된 설정을 적용하기 위해 각각의 설정 파일을 별도로 지정해줬다. 다만 "useEslintrc": false 설정은 꼭 필요한 내용인지는 모르겠다. 만약 Parsing error: The keyword 'import' is reservedeslint 오류가 발생한다면 위 설정 중 "eslint.useESLintClass": true 부분이 해당 오류를 해결 할 수 있다.

각 설정 파일 .prettierrc.js, .eslintrc.json 의 설정은 아래와 같은 형식으로 지정하면 된다.

module.exports = {
  bracketSpacing: false,
  bracketSameLine: true,
  singleQuote: true,
  printWidth: 80,
  useTabs: false
};
{
  "rules": {
    "no-console": 2
  }
}

참고로 VS Code 가 아닌 다른 에디터를 사용하거나 직접 eslint 명령어로 문법 오류를 체크하는 경우라면 eslint-config-prettier 를 추가로 설치해서 eslint 설정과 prettier 설정이 서로 충동하는 것을 막을 수 있다. 그리고 아래 내용을 .eslintrc 파일에 추가해 준다.

{
  "extends": [
    "prettier"
  ]
}

Post navigation

Previous Post:

iterm2 설정 백업

Next Post:

VS Code PHP 개발환경 세팅

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Recent Posts

  • php 배열 연산에서 + 와 array_merge 의 차이
  • pcntl_fork 를 이용한 다중 프로세스 실행
  • 아이폰 단축어를 이용하여 주중 공휴일엔 알람 울리지 않게 하기
  • 구글 캘린더 전체일정 재동기화
  • OpenLiteSpeed 웹서버에 HTTP 인증 적용
  • OpenLiteSpeed 웹어드민 도메인 연결
  • WireGuard를 이용한 VPN 환경 구축
  • Ubuntu 22.04 서버에 OpenLiteSpeed 웹서버 세팅
  • 맥 vim 세팅
  • 우분투 시스템 터미널쉘 zsh 로 변경

Recent Comments

  • 편리 on 업무관리용 그누보드 게시판 스킨
  • 임종섭 on 업무관리용 그누보드 게시판 스킨
  • 캐논 5D 펌웨어 | Dslr 펌웨어 업그레이드 방법 82 개의 베스트 답변 on 캐논 EOS 30D 펌웨어 Ver 1.0.6 , EOS 5D 펌웨어 Ver 1.1.1
  • Top 5 캐논 5D 펌웨어 Top 89 Best Answers on 캐논 EOS 30D 펌웨어 Ver 1.0.6 , EOS 5D 펌웨어 Ver 1.1.1
  • 편리 on 워드프레스 애니메이션 gif 파일을 mp4로 변환하여 출력하기
  • 임팀장 on 워드프레스 애니메이션 gif 파일을 mp4로 변환하여 출력하기
  • 편리 on Notepad++ NppFTP 플러그인 수동 설치
  • paul-j on Notepad++ NppFTP 플러그인 수동 설치
  • YS on Windows 10 iCloud 사진 저장 폴더 변경
  • 편리 on Docker를 이용한 Centos7 + httpd + php 5.4 개발환경 구축

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
© 2025 CHICPRO | Built using WordPress and SuperbThemes