본문 바로가기

Type Script

[TS] tsconfig.json + tsconfig.path.json 파일 합치기

기존은 tsconfig.json 파일과 tsconfig.path.json 파일이 구분되어 있었다.

 

변경전

 tsconfig.json 

{
  "extends": "./tsconfig.path.json",
  "compilerOptions": {
    "target": "ESNext",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx"
  },
  "include": ["src"]
}

 

tsconfig.path.json

{
  "compilerOptions": {
    "baseUrl": "./src",
    "paths": {
      "@api/*": ["api/*"],
      "@assets/*": ["assets/*"],
      "@components/*": ["components/*"],
      "@helpers/*": ["helpers/*"],
      "@hooks/*": ["hooks/*"],
      "@interfaces/*": ["interfaces/*"],
      "@layout/*": ["layout/*"],
      "@pages/*": ["pages/*"],
      "@routes/*": ["routes/*"],
      "@services/*": ["services/*"],
      "@stores/*": ["stores/*"],
      "@styles/*": ["styles/*"],
      "@locales/*": ["locales/*"],
      "@ChangeLanguage/*": ["ChangeLanguage/*"]
    }
  }
}

 

변경후

*tsconfig.path.json 는 파일 삭제

*tsconfig.json의 변경코드는 아래와 같다.(extends 삭제, baseUrl, paths추가)

기존 tsconfig.path.json의 코드를 옮겨담았다.

{
  "compilerOptions": {
    "baseUrl": "./src",
    "paths": {
      "@api/*": ["api/*"],
      "@assets/*": ["assets/*"],
      "@components/*": ["components/*"],
      "@helpers/*": ["helpers/*"],
      "@hooks/*": ["hooks/*"],
      "@interfaces/*": ["interfaces/*"],
      "@layout/*": ["layout/*"],
      "@pages/*": ["pages/*"],
      "@routes/*": ["routes/*"],
      "@services/*": ["services/*"],
      "@stores/*": ["stores/*"],
      "@styles/*": ["styles/*"],
      "@locales/*": ["locales/*"],
      "@ChangeLanguage/*": ["ChangeLanguage/*"]
    },
    "target": "ESNext",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx"
  },
  "include": ["src"]
}

 

*craco.config.js의 드래그 부분 삭제