# Composants Vue (Vue.js / Nuxt.js) > Component lifecycle, props, events, slots, scoped styles, component communication, dynamic components - 20 questions d'entretien - Junior - [Questions d'entretien: Vue.js / Nuxt.js](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien.md) ## 1. Qu'est-ce qu'un composant Vue ? **Réponse** Un composant Vue est une instance Vue réutilisable avec un nom. Il encapsule HTML, CSS et JavaScript dans une unité logique indépendante. Les composants permettent de diviser l'interface utilisateur en morceaux réutilisables et maintenables. Chaque composant possède son propre template, sa logique et ses styles, facilitant ainsi l'organisation du code et la réutilisabilité. ## 2. Comment déclarer des props dans un composant Vue 3 avec script setup ? **Réponse** Dans Vue 3 avec script setup, defineProps() est une macro de compilation qui permet de déclarer les props sans import explicite. Cette macro génère automatiquement le code nécessaire et expose les props au template. Elle supporte la validation de types TypeScript et JavaScript, rendant le code plus concis et type-safe que l'approche Options API. ## 3. Quelle est la fonction du hook onMounted() dans le lifecycle d'un composant ? **Réponse** Le hook onMounted() s'exécute après que le composant a été monté dans le DOM. C'est le moment idéal pour effectuer des opérations qui nécessitent l'accès au DOM, comme initialiser des bibliothèques tierces, récupérer des données via API, ou manipuler directement des éléments DOM. À ce stade, le template est rendu et les refs sont accessibles. ## 17 questions supplémentaires disponibles - Comment un composant enfant émet-il un événement vers son composant parent ? - À quoi servent les slots dans un composant Vue ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien Vue.js / Nuxt.js - [Fondamentaux JavaScript](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/javascript-fundamentals.md): 20 questions, Junior - [JavaScript moderne (ES6+)](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/es6-modern-javascript.md): 20 questions, Junior - [Les bases de Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-basics.md): 22 questions, Junior - [Vue Router](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-router.md): 18 questions, Junior - [Pinia State Management](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/pinia-state-management.md): 20 questions, Junior - [Vuex (Legacy)](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vuex-legacy.md): 15 questions, Confirmé - [Composition API](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/composition-api.md): 24 questions, Confirmé - [Réactivité Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-reactivity.md): 20 questions, Confirmé - [Fondamentaux Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-fundamentals.md): 22 questions, Confirmé - [Data Fetching Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-data-fetching.md): 20 questions, Confirmé - [SSR & SSG Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-ssr-ssg.md): 22 questions, Confirmé - [Server Routes Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-server-routes.md): 20 questions, Confirmé - [Modules Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-modules.md): 18 questions, Confirmé - [Composables Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-composables.md): 20 questions, Confirmé - [Formulaires & Validation Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-forms-validation.md): 20 questions, Confirmé - [Gestion d'état Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-state-management.md): 18 questions, Confirmé - [Testing Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-testing.md): 20 questions, Confirmé - [Déploiement Nuxt & CI/CD](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-deployment-cicd.md): 22 questions, Confirmé - [Performance Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-performance.md): 22 questions, Senior - [Patterns avancés Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-advanced-patterns.md): 24 questions, Senior - [TypeScript avec Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/typescript-vue.md): 22 questions, Senior - [Authentification Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-auth.md): 20 questions, Senior - [SEO avec Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-seo.md): 20 questions, Senior - [Internationalisation Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-i18n.md): 18 questions, Senior - [Architecture Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-architecture.md): 22 questions, Senior - [Sécurité Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-security.md): 20 questions, Senior - [Écosystème Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-ecosystem.md): 18 questions, Senior - [Migration Vue 2→3 & Nuxt 2→3](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/migration-vue2-vue3-nuxt2-nuxt3.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-components