titicacadev/triple-config-kit

eslint-plugin-import resolver 확장자 설정

Closed this issue · 3 comments

eslint-plugin-import#settings에 따르면 eslint-plugin-import가 기본으로 resolve 해주는 확장자는 ['.js']라고 합니다. 따라서 js 플젝에서 .jsx를 사용한다면 아래와 같은 처리가 필요합니다.

  settings: {
    'import/resolver': {
      node: {
        extensions: ['.js', '.jsx'],
      },
    },
  },

ts/tsx만 사용하는 프로젝트는 eslint-import-resolver-typescript를 사용하므로 괜찮지만 js/jsx/ts/tsx를 혼용하는 프로젝트는 아래와 같은 설정이 필요합니다.

  settings: {
    'import/resolver': {
      node: {
        extensions: ['.js', '.jsx', '.ts', '.tsx'],
      },
    },
  },

overrides 속성을 이용해서 js/jsx/ts/tsx를 혼용하는 플젝에 대응이 가능한지 확인해봐야겠군요!

@polysiya 이게 특정 파일에서 임포트하는 모듈의 확장자를 정의하는 걸까요?

js 파일에서 ts, js 모두 임포트 할 수 있으니 js,jsx,ts,tsx 모두 존재해야하는 건지 궁금합니당

js 파일에서 ts, js 모두 임포트 할 수 있으니 js,jsx,ts,tsx 모두 존재해야하는 건지 궁금합니당

자답입니다. 테스트 코드를 작성해보니 ts 파일은 모두 받도록 되어있네요.