Creación y Registro de Componentes en Vue.js
Clase 23 de 53 • Curso Profesional de Vue.js 2
Resumen
¿Qué son los componentes en Vue?
Los componentes en Vue son una característica esencial del framework que permite crear elementos HTML personalizados. Esta capacidad nos otorga la flexibilidad de escribir un código más semántico, estructurado y fácil de gestionar. Puedes comprobar cómo se crean componentes en Vue para mejorar el diseño de tus aplicaciones web y hacerlas más eficientes y reutilizables.
¿Cómo crear y registrar componentes en Vue?
Creación de un nuevo componente
El proceso de creación de un componente en Vue comienza con la creación de un nuevo archivo con la extensión .vue
. Supongamos que tenemos un proyecto básico configurado con un archivo principal app.vue
y un archivo main.js
. Aquí te mostramos cómo proceder:
-
Crear el archivo del componente: Crea un archivo llamado
ChildComponent.vue
dentro de la carpetasrc
. Dentro del nuevo archivo, define una estructura básica utilizando unh1
para mostrar el texto: "Este es un componente hijo". -
Consideraciones de estructura: Es fundamental recordar que un componente debe tener un único padre en su estructura HTML. Esto significa que no se deben tener dos elementos HTML como padres principales, ya que esto generará errores de compilación.
<template>
<h1>Este es un componente hijo</h1>
</template>
Registro global de componentes
Ahora que tienes un componente, el siguiente paso es registrarlo para que esté disponible en toda la aplicación. Esto se realiza en main.js
utilizando la función Vue.component
.
import Vue from 'vue';
import App from './App.vue';
import ChildComponent from './ChildComponent.vue';
Vue.component('child', ChildComponent);
new Vue({
render: h => h(App),
}).$mount('#app');
¿Cuándo usar el registro global?
El registro global es útil cuando un componente se va a usar en múltiples partes de la aplicación o si se está creando una librería de plugins. Sin embargo, no siempre es lo más recomendable debido a cuestiones de performance.
¿Qué es el registro local de componentes?
El registro local implica declarar y utilizar un componente internamente dentro de otro componente específico, lo que mejora el rendimiento de la aplicación. Este método se aplica cuando un componente no se utiliza ampliamente en la aplicación.
Crear un componente local
- Definir un nuevo componente local: Crea un archivo
LocalComponent.vue
con contenido similar al archivo deChildComponent
.
<template>
<h1>Este es un componente local</h1>
</template>
Registro local en un componente
Importa y declara el nuevo componente local dentro del componente principal o en otro componente:
<template>
<div>
<LocalComponent />
</div>
</template>
<script>
import LocalComponent from './LocalComponent.vue';
export default {
components: {
LocalComponent,
},
}
</script>
Transformaciones automáticas de Vue
Vue automatiza la conversión de sintaxis PascalCase
a kebab-case
, lo cual facilita la escritura de elementos HTML personalizados. Por ejemplo, <LocalComponent />
puede ser utilizado como <local-component></local-component>
.
Exploración de la estructura de componentes
Vue ofrece herramientas de desarrollo que permiten inspeccionar la estructura de los componentes, su jerarquía y las propiedades compartidas. Esto es útil para comprender cómo interactúan los datos y los componentes dentro de la aplicación.
A partir de este conocimiento, puedes comenzar a implementar tus primeros componentes personalizados en aplicaciones más grandes. ¡No dudes en seguir experimentando y aprendiendo para maximizar el potencial de tus desarrollos con Vue!