Vite 를 사용해서 리액트를 타입스크립트로 구성하는 도중, 절대 경로를 설정하며 정리해 보았습니다.
타입스크립트가 아닌 자바스크립트 방식과는 조금 달랐는데요, vite-tsconfig-paths 모듈 설치 및 vite.config.ts, tsconfig.json 수정으로 해결하였습니다.
vite-tsconfig-paths 모듈 설치
vite-tsconfig-paths 모듈은 vite 빌드 도구를 통해 TypeScript의 경로를 매핑을 사용하여 가져올 수 있도록 하는 npm 모듈입니다.
npm install vite-tsconfig-paths --save-dev
설치가 완료되면 vite.config.ts 를 다음과 같이 수정합니다.
import { defineConfig } from 'vite'
import tsconfigPaths from 'vite-tsconfig-paths'
export default defineConfig({
plugins: [tsconfigPaths()],
})
tsconfig.json 에 baseUrl 설정
아래와 같이 설정을 하면 기본 url이 ./src로 설정이 됩니다.
{
"compilerOptions": {
// 절대 경로 설정
"baseUrl": "./src",
경로 불러오기
현재 아래와 같이 구성을 해가고 있습니다.
root --
-- public --
-- src --
-- components
-- pages
....
App.tsx
즉, src 밑으로 편하게 사용하고 싶은 건데요,
예컨대, src 하위에 pages 컴포넌트를 App.tsx 에서 사용하고자 하다면 다음과 같이 사용할 수 있습니다.
import "./App.css";
import TodoList from "pages/todo/TodoList";
function App(): JSX.Element {
...
만약에 위에서 baseUrl을 “.” 으로 지정했다면
{
"compilerOptions": {
// 절대 경로 설정
"baseUrl": ".",
불러올 때에는 아래와 같이 지정해야 합니다.
import "./App.css";
import TodoList from "src/pages/todo/TodoList";
function App(): JSX.Element {
...
즉, baseUrl을 생략할 수 있다는 느낌으로 사용하면 될 것 같습니다.
이상, vite 빌드 도구에서 typescript 기반 리액트 앱을 개발할 때 절대 경로를 사용하는 방법을 정리해 보았습니다.
그 밖에 도움이 되는 글
ERESOLVE 의존성 충돌 unable to resolve dependency tree 해결 방법
깃허브 로그인 2단계 인증 설정하기
Digital Ocean Managed PostgreSQL 최저 요금 알아보기