Creación de Aplicaciones con Svelte: Primeros Pasos Prácticos
Resumen
¿Cómo crear una aplicación con Svelte desde cero?
Crear una aplicación con Svelte es un proceso emocionante que nos permite entender cómo este framework facilita el desarrollo web. Svelte destaca por su sintaxis similar al HTML, su eficiencia, y cómo maneja la interacción con los usuarios. ¡Visualicemos cómo se hace!
¿Cómo iniciamos nuestro proyecto Svelte?
Para empezar un proyecto con Svelte, lo primero es crear un nuevo sandbox y elegir el template de Svelte. Al crear nuestro proyecto, verás un archivo package.json que enumera las dependencias del proyecto. Svelte usa Rollup para la construcción del código. Un archivo clave es rollup.config.js, que define esta configuración, disponible para que la examines en la sección de archivos y enlaces si deseas explorar cómo funciona Rollup más a fondo.
¿Cómo podemos estructurar nuestro contenido HTML en Svelte?
La estructura del HTML en Svelte se asemeja mucho a la del HTML convencional. Puedes incluir etiquetas <style> para estilos y <script> para lógica JavaScript. En nuestro caso, empezamos por maquetar una aplicación de películas:
Aquí, tenemos un formulario para una película con dos botones y una cantidad por defecto de "0".
¿Cómo modularizamos en Svelte con componentes?
Transformar el formulario en un componente nos ayuda a organizar mejor nuestro código. Creamos un archivo Form.svelte y movemos allí el formulario. Luego, lo importamos al archivo principal del siguiente modo:
<script>importFormfrom'./Form.svelte';</script>
Este enfoque modular permite reutilizar componentes en distintas partes de la aplicación.
¿Cómo manejamos listas y ciclos en Svelte?
Svelte usa una sintaxis similar a Handlebars para manejar ciclos. Supongamos que tenemos un array de películas y deseamos renderizar un formulario por cada elemento. Empleamos una estructura #each:
Aquí, los botones incrementan o decrementan la cantidad, asegurando que esta no baje de cero ni exceda la cantidad disponible.
¿Cómo manejamos estilos y CSS en Svelte?
Svelte facilita la incorporación de CSS directamente en los componentes. En el siguiente módulo aprenderemos a darle estilos usando CSS normal y preprocesadores. Además, descubriremos la metodología CSS en CSS para mantener los estilos encapsulados dentro de nuestros componentes.
Con estos conceptos, ya tienes una base sólida para continuar explorando más de Svelte. Recuerda, la práctica y el experimentación son fundamentales en el aprendizaje del desarrollo web. ¡Adelante, y sigue aprendiendo!
Jajajajaja React Js ser el Padre supremo <3
Podemos usar otros, trabajar con otros por temas de la empresa en la que estemos, pero React Js seguira en nuestros corazones.
Saludos! Así es como hice un componente independiente para los botones:
<script>exportlet initialValue =0;exportlet maxValue ;//Por defecto el contador comienza en 0let contador = initialValue;functionaumentar(){ contador++;}functiondisminuir(){ contador--;}</script><button type="button"on:click={disminuir} disabled={contador<=0}>-</button>{contador}/*Hacemos que el botón de aumentar se desactive cuando el contador alcance el valor máximo (que le pasaremos al llamar al componente)*/<button type="button"on:click={aumentar} disabled={contador>=maxValue}>+</button>
Luego al llamar a los botones en el formulario sería de esta manera:
(Realmente no es necesario especificar el initialValue ya que por defecto es 0).
{#each movies as movie}<form><h4>{movie.name}</h4><Buttons initialValue ={0} maxValue={movie.available}/></form>{/each}
Es un paquete de módulos para JavaScript que compila pequeños fragmentos de código en algo más grande y complejo, como una biblioteca o aplicación. Utiliza el nuevo formato estandarizado para módulos de código incluidos en la revisión ES6 de JavaScript, en lugar de soluciones idiosincrásicas anteriores como CommonJS y AMD. Los módulos ES le permiten combinar libremente y sin problemas las funciones individuales más útiles de sus bibliotecas favoritas. Esto eventualmente será posible de forma nativa en todas partes, pero Rollup te permite hacerlo hoy.
<script>const movies =[{name:"Avatar",available:5,quantity:0},{name:"Superman man of Steel",available:4,quantity:0},{name:"Batman vs Superman",available:5,quantity:0},{name:"Wonder Woman",available:1,quantity:0},{name:"Acuaman",available:6,quantity:0},{name:"Snyder Cut: Justice Leage",available:10,quantity:0}];</script>{#each movies as movie}<form><h4>{movie.name}</h4><button type="button"on:click={()=> movie.quantity+=1} disabled={movie.quantity>= movie.available}>+</button>{movie.quantity}<button type="button"on:click={()=> movie.quantity-=1} disabled={movie.quantity<=0}>-</button></form>{/each}
Sobre Svelte muy sencilla la sintaxis me gusto pero si toca elegir me quedo con Vue JS y React a ver en que logro encontrar la oportunidad laboral en mi pais
<script>const movies =[{name:"Avengers",available:5,quantity:0},{name:"Wonder Woman",available:15,quantity:0}];</script>{#each movies as movie}<form><h4>{movie.name}</h4><button type="button"on:click={()=> movie.quantity--} disabled={movie.quantity<=0}>-</button>{movie.quantity}<button type="button"on:click={()=> movie.quantity++} disabled={!(movie.quantity< movie.available)}>+</button></form>{/each}
No lo creo. Un enfoque que no se debe perder de vista son los componentes, entonces para crear un componente lo tienes que hacer en un archivo diferente para darle toda la abstracción necesaria.