Eslint

Younghwan Cha·2022년 10월 12일
0

configuration

목록 보기
5/7
post-thumbnail

import 순서 정렬


eslint-plugin-import

$ npm install -D eslint-plugin-import

pathGroups 을 지정해서 Nest 를 포함할 경우 external 그룹에 포함시키고,
가장 앞단 ( before ) 위치 시킬 수 있다.

// .eslintrc.js

module.exports = {
	...
  	plugins: ['import'],
	rules: {
      'import/order': [
      	'error',
        {
          groups: ['builtin', 'external', 'internal'],
          pathGroups: [
          	{
              pattern: 'Nest',
              group: 'external',
              position: 'before'
          	}
          ],
          alphabetize: {
            order: 'asc',
            caseInsensitive: true
          }
        }
      ]
    }
}

eslint-plugin-simple-import-sort

$ npm install -D eslint-plugin-simple-import-sort
// .eslintrc.js

module.exports = {
	...
    plugins: ['simple-import-sort'],
    rules: {
      'simple-import-sort/imports': 'error',
      'simple-import-sort/exports': 'error',
    }
}

위 두 plugin 은 같이 쓰지 못하기 때문에 하나만 선택해서 사용해야한다.


[simple-import-sort github] https://github.com/lydell/eslint-plugin-simple-import-sort
[import/order] https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/order.md
[import 정렬 blog]
https://velog.io/@eenaree/eslint-import-order
https://bepyan.github.io/snippets/lint/eslint-sort-import
https://db2dev.tistory.com/entry/ESLint-importorder-%EA%B7%9C%EC%B9%99-%EC%84%A4%EC%A0%95%ED%95%98%EA%B3%A0-%EB%92%A4%EC%A3%BD%EB%B0%95%EC%A3%BD-import-%EC%BD%94%EB%93%9C-%EA%B0%9C%EC%84%A0%ED%95%98%EA%B8%B0

상대 경로를 절대 경로로 강제하기


eslint-plugin-no-relative-import-paths

$ npm i eslint-plugin-no-relative-import-paths
// .eslint.rc

{
  "plugins": ["no-relative-import-paths"],
  "rules": {
    "no-relative-import-paths/no-relative-import-paths": [
      "warn",
      { 
        "allowSameFolder": true,
        "rootDir": 'src',
        "prefix": '@',
      }
    ]
  }
}

[npm] https://www.npmjs.com/package/eslint-plugin-no-relative-import-paths

profile
개발 기록

0개의 댓글