Contenido del curso

Contexto y funcionamiento de los Frameworks JavaScript

Componentes en Vue.js y Preprocesadores CSS

Resumen

¿Cómo utilizar Vue.js components en tus proyectos?

El uso de Vue.js components es fundamental para llevar tus aplicaciones al siguiente nivel, permitiendo una mejor gestión del código y una integración más fluida con herramientas del ecosistema de Vue.js. En este artículo, exploraremos cómo crear y manejar components en Vue.js para maximizar su potencial.

¿Qué son los Vue.js components y cuál es su estructura básica?

Los Vue.js components permiten una separación clara y efectiva del código en diferentes secciones: HTML, JavaScript y CSS. Estos components se construyen de tres secciones principales:

  • Template: Aquí resides el HTML o el contenido que se convertirá en HTML.

  • Script: En esta parte puedes definir el comportamiento del component, manejando la lógica de JavaScript, la definición de otros components y la información reactiva.

  • Style: Sección donde puedes definir estilos específicos para el component, usando preprocesadores CSS como SASS, y decidir, mediante el atributo scoped, si estos estilos afectarán globalmente o solo serán aplicables al component.

¿Cómo crear un nuevo proyecto de Vue.js?

Para trabajar con un nuevo proyecto y aprovechar la sintaxis completa de Vue.js, sigue estos pasos:

  1. Crea un nuevo sandbox seleccionando la opción Vue.js y elige la versión oficial de Vue 3.
  2. Observa el uso de la función createApp de Vue.js usando la sintaxis de ECMAScript 6 para imports.
  3. Identifica la importación de un component de prueba HelloWorld.vue, y cámbialo según las necesidades de tu aplicación.
import { createApp } from 'vue'; import Form from './components/Form.vue'; createApp({ components: { Form } }).mount('#app');

¿Cómo definir un component Vue.js personalizado?

Para crear un component personalizado, sigue la estructura básica y define los detalles necesarios:

  1. Crea el archivo form.vue. Aquí reemplazamos la estructura predeterminada con:
<template> <form> <h3>Terminator</h3> <!-- estructura de formulario --> </form> </template> <script> export default { name: 'form', // información reactiva y lógica aquí } </script> <style scoped> /* Estilos aquí */ </style>
  1. Conecta los datos dentro del component usando la información reactiva. Por ejemplo, creando un array de películas con sus atributos específicos como cantidad de boletos.
data() { return { movies: [ { name: 'Avengers', available: 3, quantity: 0 }, { name: 'Terminator', available: 5, quantity: 0 } ] }; }

¿Cómo vincular dinámicamente datos en el template?

Para que la información dentro del component sea dinámica y reactiva:

  1. Utiliza v-for para iterar y renderizar dinámicamente el contenido basado en la data. Así, se pueden crear automáticamente múltiples instancias del formulario para cada película:
<template> <div v-for="movie in movies" :key="movie.name"> <h3>{{ movie.name }}</h3> <button :disabled="movie.quantity <= 0" @click="movie.quantity--">-</button> {{ movie.quantity }} <button :disabled="movie.quantity >= movie.available" @click="movie.quantity++">+</button> </div> </template>
  1. Asegúrate de manejar eventos como @click para actualizar la cantidad de boletos de forma interactiva.

¿Cómo integrar estilos específicos con Vue.js components?

Vue.js permite usar preprocesadores de CSS para darle estilo a tus components. Para estilos únicos y localizados, el atributo scoped es clave:

<style scoped lang="scss"> /* Tus estilos con SASS aquí */ </style>

Con esta estructura y funcionalidades, nuestros Vue.js components están listos para utilizarse en aplicaciones dinámicas y modulares. Te animo a seguir explorando y ampliando tus conocimientos en Vue.js en futuros proyectos y clases, y no olvides experimentar con preprocesadores CSS para personalizar aún más tus aplicaciones. ¡Adelante!