Skip to content

Sistema de Componentes

MARIA MERCEDES ATIM edited this page Sep 20, 2025 · 2 revisions

4. Sistema de Componentes

En CapyGaming, los componentes manejan la estructura visual y funcionalidad clave del sistema. El enfoque modular basado en Vue.js permite una separación clara de responsabilidades, facilita la reutilización y mejora la experiencia de desarrollo.

Cada componente cumple propósitos específicos, como mostrar productos, realizar pagos, manejar formularios de autenticación o navegar por las categorías. A continuación, se presenta un desglose de los componentes más importantes.

Estructura General de Componentes

frontend/src/components/
├── CarritoModal.vue # Modal para ver y gestionar productos en el carrito.
├── CarritoModalPreview.vue # Vista previa del carrito para ítems seleccionados.
├── CheckoutForm.vue # Formulario final de compra.
├── Home.vue # Página principal de la tienda.
├── NavBar.vue # Barra de navegación superior.
├── Productos.vue # Vista de catálogo de productos.
├── ExploradorCategorias.vue # Menú lateral para explorar categorías.
├── FooterPag.vue # Footer con enlaces e información extra.
├── Registro.vue # Formulario de registro de usuarios.
├── InicioSesion.vue # Formulario de login.
├── TerminosYCondiciones.vue # Modal para políticas legales.

Nota: Los componentes están diseñados para ser reutilizables y están encapsulados para funcionar de manera independiente.

🖥️ Componentes Clave del Proyecto

1. NavBar.vue
El Header/Barra de Navegación permite al usuario moverse fácilmente por las páginas y buscar productos.

🔧 Características:

  • Simple y accesible.
  • Incluye un cuadro de búsqueda.
  • Botones de login, registro, carrito, y enlaces directos a secciones claves como "Ofertas" y "Productos".

2. Home.vue
La página principal muestra secciones destacadas como categorías populares, ofertas limitadas y promociones.

Elementos que contiene:

  • Productos destacados.
  • Categorías con acceso directo.
  • Sección promocional rotativa (carousel).

3. Productos.vue
Es el catálogo central donde se muestran los productos de la tienda. Este componente es dinámico y funcional.

🔧 Características:

  • Visualización limpia en formato grid.
  • Botones para agregar productos al carrito.
  • Stock disponible y precio con detalle claro.

Productos.vue
├── producto-card (rendereo por producto)
│ ├── nombre
│ ├── precio
│ ├── imagen
│ ├── stock
│ ├── botón Agregar al Carrito

4. CarritoModalPreview.vue
El modal del carrito es una ventana emergente que permite gestionar todos los productos seleccionados antes de proceder al pago.

🔧 Características:

  • Lista dinámica de productos agregados.
  • Posibilidad de agregar/eliminar cantidades por producto.
  • Botón directo para proceder al checkout.

5. ExploradorCategorias.vue
El menú lateral de categorías permite a los usuarios filtrar los productos según tipos como Notebooks, Procesadores, Memorias, y más.

🔧 Características:

Jerarquía con opciones principales y subcategorías. Selección dinámica para organizar los resultados.

6. CheckoutForm.vue
El formulario de finalización de compra recopila información clave para validar el pedido y realizar el pago.

🔧 Características:

Recopila nombre, apellido, dirección y medios de pago. Integración de pago con MercadoPago. Valida y guarda la orden en el sistema.

Relación entre los Componentes

Los componentes han sido diseñados para funcionar en conjunto y de manera optimizada. Aquí tienes un diagrama simplificado de cómo interactúan:

App.vue
├── NavBar.vue # Barra de navegación superior
├── RouterView # Carga las vistas principales (Home, Productos)
│ ├── Home.vue # Carga el inicio con secciones dinámicas
│ ├── productos.vue # Renderiza catálogo en ruta /productos
│ ├── CarritoModal.vue # Gestiona productos seleccionados
├── Footer.vue # Enlace informativo de toda la página

Ventajas del Sistema Modular de Componentes

Reutilización: Componentes como producto-card.vue se pueden usar en diferentes vistas sin duplicar lógica.
Mantenimiento sencillo: Si un componente necesita ajustes, sus cambios se reflejan automáticamente en todo el sistema.
Escalabilidad: Con esta estructura, añadir nuevas funciones o vistas es fácil y organizado.

Resumen Visual de Componentes

Todos estos componentes trabajan juntos para ofrecer una experiencia fluida y amigable, asegurando que CapyGaming sea un ecommerce eficiente y atractivo: