Skip to main content

Command Palette

Search for a command to run...

Visual Studio Code로 Vue.js + TypeScript 개발환경 구성

Updated
2 min read
Visual Studio Code로 Vue.js + TypeScript 개발환경 구성

.NET 개발자의 Vue.js + TypeScript 도전기 시리즈를 시작합니다. 본 시리즈는 최대한 짧은 주제로 꾸준히 글을 올리는 것을 목표로 합니다.

저는 .NET 개발자로 Vue.js의 경험은 전무하며 TypeScript 언어는 스터디 수준으로 알고 있으며, Visual Studio Code로 개발 환경을 구축하는데 경험이 부족합니다. 본 글은 저와 비슷한 위치에 있는 분 또는 초급 개발자가 Visual Studio Code에서 Vue.js + TypeScript 구성으로 개발을 시작할 수 있도록 기록합니다.

Vue.js란?

Vue.js(간단히 Vue /vjuː/, 뷰)는 웹 애플리케이션 사용자 인터페이스를 만들기 위한 오픈소스로 프로그레시브 자바스크립트 프레임워크입니다. Vue.js 3부터 TypeScript에 대한 지원이 강화되었습니다. 다른 라이브러리와의 결합이 용이하며 점진적으로 적용할 수도 있다고 합니다. SPA(Single Page Application) 앱을 구축하는데 사용할 수 있습니다.

컴포넌트로 화면 단위를 구성할 수 있으며 컴포넌트가 잘 구축이 되었다면 복잡한 화면도 수정 시 일관성을 가지게 됩니다. (예: A페이지에서는 수정되었는데 B페이지에서는 수정되지 않는 문제 없음)

기본적인 Vue.js의 컴포넌트 구성은 다음과 같습니다. 스크립트와 템플릿, 스타일이 하나의 컴포넌트로 구성됩니다.

<script setup lang="ts">
defineProps<{
  msg: string
}>()
</script>

<template>
  <div class="greetings">
    <h1 class="green">{{ msg }}</h1>
    <h3>
      You’ve successfully created a project with
      <a href="https://vitejs.dev/" target="_blank" rel="noopener">Vite</a> +
      <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue 3</a>. What's next?
    </h3>
  </div>
</template>

<style scoped>
h1 {
  font-weight: 500;
  font-size: 2.6rem;
  position: relative;
  top: -10px;
}

h3 {
  font-size: 1.2rem;
}

.greetings h1,
.greetings h3 {
  text-align: center;
}

@media (min-width: 1024px) {
  .greetings h1,
  .greetings h3 {
    text-align: left;
  }
}
</style>

Vue.js + TypeScript 프로젝트 생성

npm 설치

npm은 JavaScript 언어를 위한 패키지 관리자입니다. node.js를 설치하면 npm을 사용할 수 있게 됩니다.

create-vue를 이용한 프로젝트 생성

create-vue를 이용해 쉽게 Vue.js + TypeScript 프로젝트를 생성할 수있습니다. 다음의 명령을 사용합니다.

npm create vue@latest

이후 프로젝트명 등 각종 설정을 비활성/활성화 할 수 있습니다. 이 때 Add TypeScript를 선택해서 TypeScript용으로 프로젝트를 구성할 수 있습니다.

이후 npm installnpm run format, npm run dev를 통해 생성된 프로젝트를 실행해 볼 수 있습니다.

npm run dev로 실행된 로컬 주소 http://localhost:5173/을 통해 다음의 실행 화면을 확인할 수 있습니다.

Visual Studio Code 개발 환경 구성

Visual Studio Code를 설치 했다면 프로젝트 디렉토리에서 code .를 통해 Visual Studio Code에 진입할 수 있습니다.

PS W:\Learnings\vue-learning\vue-test> code .

개발에 필요한 개개의 확장을 별도로 설치해도 되지만 Visual Studio Code에서 필요로 하는 확장을 안내해주는 것을 설치해도 됩니다. package.json을 선택했을 때 다음의 권장 패키지를 설치할 수 있습니다.

이후 Visual Studio Code에서 Vue.js + TypeScript 개발을 진행할 수 있습니다.

More from this blog

개발, 테스트, 운영에서의 도커 활용

핵심 원칙: "한 번 빌드하고, 어디서든 실행한다 (Build once, run anywhere)" 도커의 가장 큰 장점은 환경 일관성입니다. 동일한 도커 이미지를 사용하여 개발, 테스트, 운영 환경을 구성함으로써 "제 PC에서는 됐는데..." 하는 문제를 최소화할 수 있습니다. 1. 개발 단계 (Development) 목표: 빠른 코드 변경 반영, 쉬운 디버깅, 실제 운영 환경과 유사한 환경 구성. Docker 사용 방안: Dockerf...

May 9, 20256 min read15

[EF Core] 데이터 삭제 시 소프트 삭제 적용

DB에서 데이터를 삭제하면 일반적으로 복구할 수 없습니다. 또한 관계에 따라 영구 삭제 자체가 어려울 수도 있습니다. 그래서 데이터를 영구 삭제하는 대신 IsDeleted 속성을 true로 주고 IsDeleted 속성을 필터링해서 조회하는 방법을 사용하기도 합니다. 이를 소프트 삭제라고 합니다. 그런데 EF에서 알아서 데이터 삭제 시 소프트 삭제를 하고 쿼리시 IsDeleted 속성을 체크해서 삭제한 데이터를 제외한 데이터만 쿼리하게 하는 ...

Mar 18, 20243 min read19

[EF Core] ValueConverter를 이용해서 엔터티 속성의 도메인 관리

EF Core를 사용하면서 문자열 길이 등의 특성을 일일이 지정하는 것은 번거롭습니다. ... [MaxLength(32)] public string? 제목 { get; set; } 엔터티가 한 개일 때는 상관이 없으나 제목 유형이 여러 엔터티에 사용될 경우 유형을 지정하기 번거롭습니다. 속성 유형을 도메인으로 관리하면 참 편할텐데요, ValueConverter를 이용할 수 있습니다. 그런데 이것을 인터페이스 정적 추상를 사용해서 다음처럼 ...

Mar 16, 20242 min read8

디모이 블로그

154 posts

.NET 관련 기술을 선호하고 새로운 언어를 배우는데 관심이 있습니다.