# Composition API (Vue.js / Nuxt.js) > Setup function, ref, reactive, computed, watch, lifecycle hooks, composables, script setup - 24 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: Vue.js / Nuxt.js](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista.md) ## 1. ¿Qué es la Composition API en Vue 3? **Respuesta** La Composition API es una nueva forma de organizar la lógica de los componentes Vue usando funciones de composición en lugar de las opciones (data, methods, computed). Permite agrupar la lógica por funcionalidad en vez de por tipo de opción, facilitando la reutilización del código mediante composables. También ofrece un mejor soporte para TypeScript y una mejor organización de los componentes complejos. ## 2. ¿Cuál es la función principal utilizada en la Composition API para definir la lógica de un componente? **Respuesta** La función setup() es el punto de entrada de la Composition API. Se ejecuta antes de la creación del componente, incluso antes de created(). Recibe los props y el contexto como argumentos y debe devolver un objeto que contenga los datos y funciones a exponer al template. Es en setup() donde se usan ref, reactive, computed, watch y los lifecycle hooks de la Composition API. ## 3. ¿Cuál es la diferencia principal entre ref() y reactive()? **Respuesta** ref() crea una referencia reactiva para un valor primitivo o un objeto, accesible mediante .value en el script (pero auto-unwrapped en los templates). reactive() crea un proxy reactivo solo para objetos y arrays, sin requerir .value pero pierde su reactividad si se desestructura. ref() es más versátil para los primitivos, reactive() es más natural para los objetos complejos pero requiere toRef/toRefs para la desestructuración. ## 21 preguntas más disponibles - ¿Cómo acceder al valor de una ref en la función setup()? - ¿Cómo crear una propiedad computed en la Composition API? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista Vue.js / Nuxt.js - [Fundamentos de JavaScript](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/javascript-fundamentals.md): 20 preguntas, Junior - [JavaScript moderno (ES6+)](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/es6-modern-javascript.md): 20 preguntas, Junior - [Fundamentos de Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-basics.md): 22 preguntas, Junior - [Componentes Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-components.md): 20 preguntas, Junior - [Vue Router](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-router.md): 18 preguntas, Junior - [Pinia State Management](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/pinia-state-management.md): 20 preguntas, Junior - [Vuex (Legacy)](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vuex-legacy.md): 15 preguntas, Mid-Level - [Reactividad de Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-reactivity.md): 20 preguntas, Mid-Level - [Fundamentos de Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-fundamentals.md): 22 preguntas, Mid-Level - [Data Fetching en Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-data-fetching.md): 20 preguntas, Mid-Level - [SSR y SSG en Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-ssr-ssg.md): 22 preguntas, Mid-Level - [Rutas de servidor Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-server-routes.md): 20 preguntas, Mid-Level - [Módulos Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-modules.md): 18 preguntas, Mid-Level - [Composables de Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-composables.md): 20 preguntas, Mid-Level - [Formularios y validación Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-forms-validation.md): 20 preguntas, Mid-Level - [Gestión de estado en Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-state-management.md): 18 preguntas, Mid-Level - [Testing en Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-testing.md): 20 preguntas, Mid-Level - [Despliegue de Nuxt y CI/CD](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-deployment-cicd.md): 22 preguntas, Mid-Level - [Rendimiento de Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-performance.md): 22 preguntas, Senior - [Patrones avanzados de Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-advanced-patterns.md): 24 preguntas, Senior - [TypeScript con Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/typescript-vue.md): 22 preguntas, Senior - [Autenticación Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-auth.md): 20 preguntas, Senior - [SEO con Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-seo.md): 20 preguntas, Senior - [Internacionalización en Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-i18n.md): 18 preguntas, Senior - [Arquitectura Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-architecture.md): 22 preguntas, Senior - [Seguridad en Nuxt](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/nuxt-security.md): 20 preguntas, Senior - [Ecosistema Vue](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/vue-ecosystem.md): 18 preguntas, Senior - [Migración Vue 2→3 y Nuxt 2→3](https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/migration-vue2-vue3-nuxt2-nuxt3.md): 22 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/vue-nuxt/preguntas-entrevista/composition-api