Demonstración de componentes interactivos con Alpine.js
Alpine.js es un framework JavaScript ligero y moderno para crear componentes interactivos del lado del cliente. Esta página demuestra varios ejemplos prácticos de cómo usar Alpine.js con el sistema SysVector.
Ejemplo básico de un contador con botones para incrementar, decrementar y resetear.
Componente de pestañas para alternar entre diferentes contenidos.
Este es el contenido de la primera pestaña. Puedes colocar cualquier tipo de contenido aquí.
Este es el contenido de la segunda pestaña. Las pestañas son útiles para organizar información relacionada.
Este es el contenido de la tercera pestaña. Alpine.js hace que la creación de componentes interactivos sea muy simple.
Componente de acordeón que puede ser expandido y colapsado.
Ventana modal que puede ser abierta y cerrada.
Aplicación simple de lista de tareas con adición, eliminación y marcado de completado.
Ejemplo de formulario con validación en tiempo real usando Alpine.js.
Ejemplo de cómo alternar entre temas claro y oscuro.
Menú desplegable que puede ser abierto y cerrado.
Ejemplo de búsqueda en tiempo real con filtrado de lista.
Galería de imágenes con zoom y navegación.
Barra de progreso animada que puede ser controlada.
Ejemplo de tooltips que aparecen al pasar el mouse.
Copiar y pegar texto usando el área de transferencia.
Selector de color con vista previa en tiempo real.
Selector de fecha interactivo con calendario.
Sistema de calificación con estrellas interactivas.
Califica esto
Carrusel de imágenes con navegación automática y manual.
Sistema de notificaciones con diferentes tipos y acciones.
Alpine.js funciona perfectamente con el sistema de traducción de SysVector. Puedes usar textos traducidos en tus componentes JavaScript de varias maneras:
Puedes pasar variables traducidas de Twig a Alpine.js usando el atributo x-data.
Almacena textos traducidos en atributos data-* y accede a ellos vía Alpine.js.
Crea endpoints API para obtener traducciones dinámicamente cuando sea necesario.
fetch('/api/translations')
.then(res => res.json())
.then(data => {
// Usar traduções no Alpine.js
});
Aquí hay algunas buenas prácticas al usar Alpine.js con SysVector: