# TypeScript із Vue (Vue.js / Nuxt.js) > Підтримка TypeScript у Vue 3, defineComponent, PropType, type inference, generic components, strict mode - 22 питань зі співбесід - Senior - [Питання зі співбесід: Vue.js / Nuxt.js](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy.md) ## 1. Яка основна роль defineComponent у Vue 3 з TypeScript? **Відповідь** defineComponent вмикає type inference TypeScript для опцій компонента. Без цієї функції контекст this в Options API трактувався б як any. Вона гарантує, що props, data, computed та методи автоматично отримують правильні типи. ## 2. Чому варто використовувати PropType під час оголошення складних props із runtime declaration? **Відповідь** PropType — це utility type Vue, який дозволяє приводити типи props під час runtime-оголошення. Object as PropType Book гарантує, що book правильно типізується як Book замість загального Object. Це покращує автодоповнення та безпеку типів без потреби в script setup із generic types. ## 3. У чому різниця між script setup та script setup із lang='ts' для type inference? **Відповідь** script setup із lang='ts' вмикає TypeScript і дозволяє автоматичну type inference без defineComponent. Props, оголошені через defineProps, типізуються автоматично, refs мають повну inference, а помилки TypeScript виявляються під час компіляції. Без lang='ts' жодної перевірки типів не виконується. ## Ще 19 доступних питань - Як правильно типізувати ref, який спочатку може бути null у TypeScript? - Яка основна перевага generic-компонентів зі script setup generic у Vue 3.3+? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Vue.js / Nuxt.js - [Основи JavaScript](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/javascript-fundamentals.md): 20 запитань, Junior - [Сучасний JavaScript (ES6+)](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/es6-modern-javascript.md): 20 запитань, Junior - [Основи Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-basics.md): 22 запитань, Junior - [Компоненти Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-components.md): 20 запитань, Junior - [Vue Router](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-router.md): 18 запитань, Junior - [Pinia State Management](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/pinia-state-management.md): 20 запитань, Junior - [Vuex (Legacy)](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vuex-legacy.md): 15 запитань, Mid-Level - [Composition API](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/composition-api.md): 24 запитань, Mid-Level - [Реактивність Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-reactivity.md): 20 запитань, Mid-Level - [Основи Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-fundamentals.md): 22 запитань, Mid-Level - [Отримання даних у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-data-fetching.md): 20 запитань, Mid-Level - [SSR і SSG у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-ssr-ssg.md): 22 запитань, Mid-Level - [Серверні маршрути Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-server-routes.md): 20 запитань, Mid-Level - [Модулі Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-modules.md): 18 запитань, Mid-Level - [Composables у Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-composables.md): 20 запитань, Mid-Level - [Форми та валідація Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-forms-validation.md): 20 запитань, Mid-Level - [Керування станом у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-state-management.md): 18 запитань, Mid-Level - [Тестування Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-testing.md): 20 запитань, Mid-Level - [Розгортання Nuxt та CI/CD](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-deployment-cicd.md): 22 запитань, Mid-Level - [Продуктивність Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-performance.md): 22 запитань, Senior - [Просунуті патерни Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-advanced-patterns.md): 24 запитань, Senior - [Автентифікація Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-auth.md): 20 запитань, Senior - [SEO з Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-seo.md): 20 запитань, Senior - [Інтернаціоналізація Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-i18n.md): 18 запитань, Senior - [Архітектура Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-architecture.md): 22 запитань, Senior - [Безпека Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-security.md): 20 запитань, Senior - [Екосистема Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-ecosystem.md): 18 запитань, Senior - [Міграція Vue 2→3 та Nuxt 2→3](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/migration-vue2-vue3-nuxt2-nuxt3.md): 22 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/typescript-vue