sumini dev

posts

React+Typescript 절대경로 import 설정하기

profile-image

Choi su min

상대 경로를 사용하면 package 구조가 깊어질 수록 파일 간의 관계를 파악하기 어려워지고, 파일 이동시 귀찮게 경로를 수정해야 합니다.

예시

import { P, Space, Line } from '../../../../../../../component/atoms';
import { MIDDLE_GREY } from '../../../../../../../component/atoms/colors';

절대 경로를 사용하면 depth와 상관 없이 일관되고 짧은 경로를 작성할 수 있으며, 파일 이동시에도 그대로 사용할 수 있습니다.

import { P, Space, Line } from '@src/component/atoms';
import { MIDDLE_GREY } from '@src/component/atoms/colors';

1. 타입스크립트 컴파일러 설정

typescript compiler에게 @src가 루트 경로의 src 폴더 임을 알려줘야 합니다. 루트 경로의 tsconfig.json 파일을 수정하면 됩니다.

{
  "compilerOptions": {
    ...
    "baseUrl": ".",
    "paths": {
      "@src/*": [
        "src/*"
      ]
    }
  }
}
tsconfig.json

2. Babel 설정

babel이 코드를 compile할 때, 절대 경로로 작성된 path를 이해하도록 설정을 추가해야합니다. 루트 경로의 .babelrc 파일을 수정하면 됩니다.

  1. npm i -D babel-plugin-module-resolver 을 입력해 플러그인을 설치합니다.
  2. 루트 경로의 .babelrc 파일에 다음 코드를 추가합니다.
{
  ...,
  "plugins": [
    ...,
    [
      "module-resolver",
      {
        "root": ["./"],
        "alias": {
          "@src": "./src"
        }
      }
    ]
  ]
}

Ref


REACT8개 더보기

TYPESCRIPT1개 더보기

모든 글 보기

이전 글

Next.js "window,document is not defined" 해결하는 법

다음 글

Nextjs+Typescript 프로젝트에 styled-components 추가하기

profile-image

Choi su min

Sogang Univ.

AWESOME.DEV Lead

Anyang, Gyeong-gi, Republic of Korea

github-iconmail-iconrss-icon