Vue 프로젝트에 ESLint 적용하기

https://eslint.org

SLint는 JavaScript와 JSX 코드에서 문제를 찾아주는 정적 코드 분석 도구입니다.

일관된 코딩 스타일을 유지하고, 코드 품질을 향상시키며, 버그를 예방하는 데 도움이 됩니다.

Vue 프로젝트에서도 ESLint를 적용하여 이러한 이점을 누릴 수 있습니다.

먼저, Vue 프로젝트를 생성합니다. Vue CLI를 사용하여 새로운 프로젝트를 생성할 수 있습니다.

vue create my-vue-project

프로젝트를 생성할 때 ESLint를 설정할 수 있는 옵션이 있습니다. 하지만 이미 생성된 프로젝트에 ESLint를 적용하려면 다음 명령어를 사용합니다.

npm install eslint

프로젝트에 ESLint를 추가하면 .eslintrc 파일이 생성됩니다. 이 파일에서 ESLint 설정을 관리할 수 있습니다. 기본 설정을 살펴보겠습니다.

module.exports = {
  root: true,
  env: {
    node: true,
  },
  extends: [
    'plugin:vue/vue3-essential',
    'eslint:recommended',
    '@vue/typescript/recommended', // TypeScript를 사용하는 경우
  ],
  parserOptions: {
    ecmaVersion: 2020,
  },
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  },
}

기본 규칙 외에도 프로젝트에 맞게 ESLint 규칙을 커스터마이징할 수 있습니다.

예를 들어, 코드에서 세미콜론을 항상 사용하도록 설정하고 싶다면, rules 섹션에 다음을 추가합니다.

rules: {
  'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  'semi': ['error', 'always'], // 세미콜론 강제 사용
}

추가적인 플러그인을 사용하여 ESLint의 기능을 확장할 수 있습니다. 예를 들어, Prettier와 함께 사용하여 코드 포매팅을 자동화할 수 있습니다.

Prettier 플러그인을 설치하고 설정하는 방법은 다음과 같습니다.

npm install --save-dev eslint-plugin-prettier eslint-config-prettier

.eslintrc 파일을 수정하여 Prettier 플러그인을 추가합니다.

module.exports = {
  root: true,
  env: {
    node: true,
  },
  extends: [
    'plugin:vue/vue3-essential',
    'eslint:recommended',
    '@vue/typescript/recommended', // TypeScript를 사용하는 경우
    'plugin:prettier/recommended' // Prettier 추가
  ],
  parserOptions: {
    ecmaVersion: 2020,
  },
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'semi': ['error', 'always'], // 세미콜론 강제 사용
    'prettier/prettier': 'error' // Prettier 오류 처리
  },
}

ESLint를 사용하여 코드를 검사하고 자동으로 수정할 수 있습니다. 다음 명령어를 사용하여 프로젝트의 코드를 검사합니다.

npm run lint

코드의 문제를 자동으로 수정하려면 다음 명령어를 사용합니다.

npm run lint --fix
<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  }
}
</script>

<style scoped>
h1 {
  font-weight: normal;
}
</style>

이 예제에서는 ESLint가 코드 스타일을 검사하고, Prettier가 코드 포매팅을 관리합니다.

ESLint를 Vue 프로젝트에 적용하면 코드 품질을 높이고, 일관된 코딩 스타일을 유지하며, 개발 과정에서 발생할 수 있는 오류를 미리 예방할 수 있습니다.

이 글을 통해 ESLint를 설치하고 설정하는 방법을 이해하고, 프로젝트에 맞게 커스터마이징하는 방법을 배웠기를 바랍니다.

앞으로 더 효율적이고 깨끗한 코드를 작성하는 데 도움이 되길 바랍니다.

Loading

Leave a Reply

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