Creación de Componentes en Vue.js con Bulma para Platzi Music
Clase 24 de 53 • Curso Profesional de Vue.js 2
Resumen
¿Cómo estructurar eficazmente una aplicación en Vue?
Cuando trabajas en el desarrollo de aplicaciones, tener una estructura organizada puede marcar la diferencia entre un proyecto mantenible o uno caótico. Siguiendo las buenas prácticas, a continuación te guiaré a través de cómo estructurar tu proyecto utilizando componentes en Vue.js, especialmente para una aplicación musical, como Platzi Music.
¿Dónde crear los componentes?
La creación de componentes en una aplicación Vue comienza por establecer una estructura en el directorio que sea lógica y fácil de seguir:
- Carpeta 'components':
- Es recomendable alojar todos los componentes en una carpeta específica llamada
components
. Aunque no es la única opción, esta práctica ayuda a mantener orden en el proyecto.
- Es recomendable alojar todos los componentes en una carpeta específica llamada
- Carpeta 'layout' dentro de 'components':
- Dentro de
components
, crea una subcarpeta llamadalayout
para separar componentes relacionados con la estructura principal de la aplicación, como el Header y Footer.
- Dentro de
¿Cómo crear y estilizar el componente Footer?
Al diseñar un Footer usando el framework CSS Bulma, puedes mejorar visualmente tu aplicación con estilos predefinidos.
<template>
<footer class="footer">
<div class="content has-text-centered">
<p>Code with ❤️ by [Tu Nombre]</p>
</div>
</footer>
</template>
- Bulma classes: Utiliza
footer
,content
yhas-text-centered
para darle estilo y centrar el contenido. - Edición básica: Elimina secciones de scripts y estilos no usados en el componente inicial.
¿Cómo incorporar el Footer en el proyecto?
Para integrar el nuevo componente Footer, sigue estos pasos:
- Importar el Componente en
App.vue
:- Utiliza un prefijo como
pm
para diferenciar componentes del proyecto respecto a librerías de terceros. - Realiza el import de este modo:
- Utiliza un prefijo como
import PmFooter from './component/layout/footer.vue';
- Declarar el Componente Localmente:
- Añade el componente a la opción
components
de la instancia de Vue para usarlo localmente.
- Añade el componente a la opción
components: {
PmFooter
}
-
Incluir el Componente en la Plantilla:
- Utiliza el estilo
kebab-case
para incluir el componente dentro del HTML:
- Utiliza el estilo
<pm-footer></pm-footer>
¿Cómo crear y estilizar el componente Header?
El componente Header usa también Bulma para aumentar la estética y funcionalidad:
<template>
<section class="hero is-success">
<div class="hero-head">
<nav class="nav">
<div class="container">
<div class="nav-left">
<a class="nav-item">
<strong>🎵 PlatziMusic</strong>
</a>
</div>
<div class="nav-right nav-menu"></div>
</div>
</nav>
</div>
<div class="hero-body">
<div class="container has-text-centered">
<h1 class="title">PlatziMusic</h1>
<h2 class="subtitle">Canciones que están buenísimas</h2>
</div>
</div>
</section>
</template>
- Clases de Bulma: Emplea
hero
yis-success
para crear una cabecera atractiva y personalizable.
¿Cómo resolver problemas comunes al integrar componentes?
-
Error de "Root Element":
- Asegúrate de tener un único componente raíz en tu template. Si encuentras errores, verifica la correcta indentación y estructura para evitar duplicación de raíces.
-
Compilación de Vue con errores:
- Revisa que todos los componentes y niveles de anidación estén perfectamente estructurados. Vue puede arrojar errores si encuentra espacios o tabulaciones inconsistentes.
¿Cómo seguir mejorando con Vue y Bulma?
Es clave seguir explorando la documentación de Bulma y Vue para ampliar tus capacidades de desarrollo. La práctica constante te permitirá crear interfaces aún más atractivas y funcionales. No te detengas y sigue perfeccionando tus habilidades de programación; el mundo del desarrollo web está lleno de oportunidades para innovar y destacar.
¡Sigue creando y aprendiendo! Recuerda que cada línea de código te acerca más a tu objetivo de ser un desarrollador experto.