[eslint] NextJS에서 Eslint 설정

루비·2023년 5월 12일
0

Eslint

목록 보기
1/2

Eslint란?

ESLint는 개발자들이 소프트웨어를 작성할 때 발생할 수 있는 실수나 잠재적인 문제를 찾아주는 도구입니다. 이 도구는 자바스크립트(JavaScript)라는 프로그래밍 언어로 작성된 소스 코드를 분석하고, 일종의 검사기로서 코드의 품질을 향상시킬 수 있도록 도와줍니다.

필요성

ESLint는 개발자들이 프로그래밍할 때 일반적으로 범하는 실수를 찾아주는 규칙을 가지고 있습니다. 이 규칙은 코드의 구조, 스타일, 표기법 등 다양한 측면을 검사하여 개선점을 제시합니다. 예를 들어, 변수를 정의할 때 오타가 있거나 규칙에 맞지 않는 네이밍을 사용하면, ESLint는 이를 발견하여 개발자에게 알려줍니다. 또한, 코드의 중복, 불필요한 공백, 잘못된 주석 등과 같은 문제들도 검출할 수 있습니다.

활용성

ESLint는 개발 팀에서 협업을 할 때도 유용하게 사용됩니다. 모든 개발자가 동일한 코딩 스타일과 규칙을 따르도록 도와주기 때문입니다. 이렇게 하면 코드의 일관성을 유지하고 가독성을 향상시킬 수 있습니다. ESLint는 개발자에게 코드를 작성하는 동안 실시간으로 피드백을 제공하여 실수를 줄이고, 버그를 사전에 예방할 수 있는 장점을 가지고 있습니다.

ESLint는 주로 개발자들이 사용하는 통합 개발 환경(IDE)에 플러그인 형태로 설치하여 사용됩니다. 이를 통해 개발자는 코드를 작성하는 동안 실시간으로 ESLint의 검사 결과를 확인할 수 있습니다. ESLint는 많은 규칙을 제공하며, 필요에 따라 추가적인 규칙을 정의하거나 기존 규칙을 수정하여 개발자의 요구에 맞게 활용할 수도 있습니다.

결론

ESLint는 개발자들이 작성한 자바스크립트 코드를 분석하고 품질을 향상시키기 위해 실수나 잠재적인 문제를 찾아주는 유용한 도구입니다. 이를 통해 개발자들은 코드의 일관성을 유지하고 버그를 예방할 수 있으며, 효율적인 협업을 가능하게 한다.

React+Typescript+TailwindCSS+Nextjs

{
  "root": true,
  "env": {
    "browser": true,
    "es2021": true,
    "node" : true
  },
  "extends": [
    "eslint:recommended",
    "plugin:react/recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:tailwindcss/recommended"
  ],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaFeatures": {
      "jsx": true
    },
    "ecmaVersion": 12,
    "sourceType": "module"
  },
  "plugins": [
    "react",
    "@typescript-eslint",
    "tailwindcss"
  ],
  "rules": {
    "semi": ["error", "always"],
    "quotes": ["error", "double"],
    "react/prop-types": "off",
    "@typescript-eslint/explicit-module-boundary-types": "off",
    "@typescript-eslint/no-explicit-any": "off",
    "arrow-parens": ["error", "as-needed"],
    "arrow-spacing": "error",
    "no-confusing-arrow": "error",
    "no-useless-constructor": "off",
    "@typescript-eslint/no-useless-constructor": "error"
  }
}
  • extends: ESLint의 기본 규칙과 React, TypeScript, Tailwind CSS 플러그인의 추가 규칙을 확장합니다.
  • parser: TypeScript 코드를 파싱하는 데 사용되는 파서를 지정합니다.
  • plugins: 사용할 플러그인을 명시합니다. 여기서는 React, TypeScript, Tailwind CSS 플러그인을 사용합니다.
  • rules: 사용자 지정 규칙을 설정합니다.

위 예제에서는 몇 가지 예시 규칙을 포함하고 있습니다. 세미콜론은 항상 사용하도록 강제하며, 따옴표는 쌍따옴표를 사용하도록 지정하였습니다. 또한, React의 PropTypes 검사를 해제하고 TypeScript의 몇 가지 규칙을 조정하였습니다. 화살표 함수와 관련된 규칙도 포함되어 있습니다.

profile
개발훠훠

0개의 댓글