:dromedary_camel: camelCase 🧮 PascalCase :snake: snake_case :oden: kebab-case
Recomiendo la herramienta Relative path para apoyarse en el llamado de archivos.
¿Cómo crear un componente y gestionar propiedades en Svelte?
La gestión de propiedades en Svelte es esencial para construir aplicaciones robustas y escalables. Este artículo abordará la creación de componentes y la forma de trabajar con propiedades y valores por defecto, así como las propiedades por propagación.
¿Cómo crear un nuevo componente con valores por defecto?
Crear un componente en Svelte empieza por definir un archivo con el nombre del componente. Para mantener las convenciones, se empieza con una letra mayúscula y se usa la extensión .svelte.
export let para gestionar las propiedades que serán recibidas desde otros componentes.export let.<script> export let anotherText = "Lorem ipsum"; </script> <div class="text"> <p>{anotherText}</p> </div>
En este ejemplo, el componente llamado Text recibe una propiedad anotherText, que por defecto es "Lorem ipsum". Esto asegura que si no se recibe un valor desde el componente padre, aún se mostrará un texto.
¿Cómo integrar un componente en la aplicación?
Una vez creado el componente, el siguiente paso es integrarlo en tu aplicación principal.
import para añadirlo a tu aplicación.<script> import Text from './components/Text.svelte'; </script> <Text anotherText="Hola" />
Aquí, el componente Text es importado y se le pasa la propiedad anotherText con el valor "Hola".
¿Cómo trabajar con objetos y propiedades por propagación?
Svelte permite la transmisión de múltiples propiedades mediante un objeto utilizando la técnica de propagación. Este método puede simplificar el manejo de varias propiedades.
<script> const data = { name: "Óscar", lastName: "Barajas", age: 31 }; </script>
<script> import Person from './components/Person.svelte'; </script> <Person {...data} />
Al usar las llaves {...} se propagan todos los valores del objeto data al componente Person.
¿Cómo recibir y manejar propiedades en el componente receptor?
Con las propiedades propagadas en el componente receptor, se deben establecer usando export let, y luego representar como sea necesario dentro del componente.
<script> export let name; export let lastName; export let age; </script> <div class="person"> <p>{name} {lastName}, {age}</p> </div>
Al estructurar correctamente las propiedades en el componente hijo, puedes desglosarlas y usarlas de forma eficiente y clara.
Trabajar con componentes y propiedades en Svelte es una habilidad esencial para cualquier desarrollador que desee crear aplicaciones modernas y eficientes. Sigue explorando y mejorando tus habilidades Svelte para dominar completamente este poderoso framework.
La gestión de propiedades en Svelte es esencial para construir aplicaciones robustas y escalables. Este artículo abordará la creación de componentes y la forma de trabajar con propiedades y valores por defecto, así como las propiedades por propagación.
Crear un componente en Svelte empieza por definir un archivo con el nombre del componente. Para mantener las convenciones, se empieza con una letra mayúscula y se usa la extensión .svelte.
export let para gestionar las propiedades que serán recibidas desde otros componentes.export let.<script>
export let anotherText = "Lorem ipsum";
</script>
<div class="text">
<p>{anotherText}</p>
</div>
En este ejemplo, el componente llamado Text recibe una propiedad anotherText, que por defecto es "Lorem ipsum". Esto asegura que si no se recibe un valor desde el componente padre, aún se mostrará un texto.
Una vez creado el componente, el siguiente paso es integrarlo en tu aplicación principal.
import para añadirlo a tu aplicación.<script>
import Text from './components/Text.svelte';
</script>
<Text anotherText="Hola" />
Aquí, el componente Text es importado y se le pasa la propiedad anotherText con el valor "Hola".
Svelte permite la transmisión de múltiples propiedades mediante un objeto utilizando la técnica de propagación. Este método puede simplificar el manejo de varias propiedades.
<script>
const data = {
name: "Óscar",
lastName: "Barajas",
age: 31
};
</script>
<script>
import Person from './components/Person.svelte';
</script>
<Person {...data} />
Al usar las llaves {...} se propagan todos los valores del objeto data al componente Person.
Con las propiedades propagadas en el componente receptor, se deben establecer usando export let, y luego representar como sea necesario dentro del componente.
<script>
export let name;
export let lastName;
export let age;
</script>
<div class="person">
<p>{name} {lastName}, {age}</p>
</div>
Al estructurar correctamente las propiedades en el componente hijo, puedes desglosarlas y usarlas de forma eficiente y clara.
Trabajar con componentes y propiedades en Svelte es una habilidad esencial para cualquier desarrollador que desee crear aplicaciones modernas y eficientes. Sigue explorando y mejorando tus habilidades Svelte para dominar completamente este poderoso framework.
:dromedary_camel: camelCase 🧮 PascalCase :snake: snake_case :oden: kebab-case
Recomiendo la herramienta Relative path para apoyarse en el llamado de archivos.
Typo min 08:38 dage
Paso de argumentos por propagación: Se envían de forma destructurada los elementos.
{ ...Objeto }
También se puede mandar todo el objeto como un prop
<Person data={data} />
y después en nuestro componente desestructurarlo
export let data;
const {name, lastName, age} = data;
Es el mismo resultado pero para los que quieran seguir la notación del prop="value" puede ser más útil
En lugar de que realices varias veces
export let name
export let lastName
export let age
Puedes optar por
export let name, lastName, age
Hola Oscar, en este curso enseñan el tema de rutas para navegar entre pestañas?
La podemos realizar mediante dos formas:
// Componente padre App.svelte
<main>
...
<Text anotherText="Hello!" />
...
</main>
// Componente padre App.svelte
<main>
...
<Person {...data} />
...html
</main>
// Componente hijo Person.svelte
<script>
export let name;
export let gitHub;
export let rol;
</script>
<div class="p">{name} {gitHub} {rol}</div>
Nota. Considera que la segunda forma deberá estar llamado igualmente en el componente hijo.
Eslint me marca warning al hacer la propagación del objeto, ¿tú recomiendas que se haga o es mejor práctica pasar el nombre de cada uno de los elementos del objeto en lugar del {...data}?
Creamos la variable en la estructura de JS
export let anotherText;
Luego la utilizamos en la estructura html
<p>{anotherText}</p>
Luego en el componente que vamos a utilizar podemos enviarle el valor
<Text anotherText="Hola" />
Si por algún motivo no le vamos a enviar valor y queremos que tenga uno por default haremos lo siguiente:
export let anotherText = "Value for default";
A qué se debe que tanto en Person.svelte y en App.svelte tengamos que exportar lo mismo? ¿Cuál es la mecánica? Gracias!
// Estas lineas de código son exactamente iguales en Person.svelte y en App.svelte
export let name;
export let lastName;
export let age;