Vue.js / Nuxt.js

Vue와 함께 사용하는 TypeScript

Vue 3 TypeScript 지원, defineComponent, PropType, type inference, generic components, strict mode

22 면접 질문·
Senior
1

TypeScript와 함께 사용하는 Vue 3에서 defineComponent의 주요 역할은 무엇인가요?

답변

defineComponent는 컴포넌트 옵션에 대한 TypeScript type inference를 활성화합니다. 이 함수가 없으면 Options API에서 this 컨텍스트가 any로 처리됩니다. 이를 통해 props, data, computed, 메서드가 자동으로 올바르게 타입이 지정되도록 보장합니다.

2

runtime declaration으로 복잡한 props를 선언할 때 PropType을 사용하는 이유는 무엇인가요?

답변

PropType는 runtime 선언 시 prop 타입을 캐스팅할 수 있게 해주는 Vue의 utility type입니다. Object as PropType Book을 사용하면 book이 일반적인 Object가 아니라 Book으로 올바르게 타입이 지정됩니다. 이를 통해 제네릭 타입을 사용하는 script setup 없이도 자동 완성과 타입 안정성이 향상됩니다.

3

type inference 측면에서 script setup과 lang='ts'를 사용한 script setup의 차이는 무엇인가요?

답변

lang='ts'를 사용한 script setup은 TypeScript를 활성화하고 defineComponent 없이 자동 type inference를 가능하게 합니다. defineProps로 정의된 props는 자동으로 타입이 지정되고, refs는 완전한 inference를 가지며, TypeScript 에러는 컴파일 시점에 감지됩니다. lang='ts'가 없으면 어떤 타입 검사도 수행되지 않습니다.

4

TypeScript에서 초기에 null일 수 있는 ref를 올바르게 타입 지정하려면 어떻게 해야 하나요?

5

Vue 3.3 이상에서 script setup generic을 사용한 제네릭 컴포넌트의 주요 장점은 무엇입니까?

+19 면접 질문

다음 면접을 위해 Vue.js / Nuxt.js을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기