Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

151
Visualizações
Llamar al objeto de matriz en src no funciona

tengo una matriz:

 let x = ''; let elements = [ { icon:"Home",name:'Home',page:'Page1' }, { icon:'Cube',name:'New',page:'Page2' }];

Estoy haciendo un bucle en él:

 {#each elements as { icon, name, page }, i} <Icon src={icon} size="24" />

Esto aquí no funciona: src={icon}

La forma correcta debería ser así:

 <Icon src="{Filter}" solid />

Si reemplazo el {icono} con una cadena, ¡funciona! ¿Alguien puede decirme por qué? Gracias

about 4 years ago · Santiago Gelvez
3 Respostas
Responde à pergunta

0

Debe importar los nombres de los iconos y usarlos en la matriz de elements sin comillas.

 <script> import { Icon, Home, Cube } from "svelte-hero-icons"; let elements = [ { icon: Home, name: "Home", page: "Page1" }, { icon: Cube, name: "New", page: "Page2" }]; </script>
 <div> {#each elements as { icon, name, page }, i} <Icon src={icon} size="32" /> {/each} </div>
about 4 years ago · Santiago Gelvez Relatório

0

He usado la etiqueta p en lugar del ícono, pero puede usar o generar un ícono concaptura de pantalla

about 4 years ago · Santiago Gelvez Relatório

0

La razón por la que esto no funciona es porque <Icon src="xxx" /> no espera una cadena sino un objeto . Si importa los iconos de la biblioteca y los registra, verá que siguen el formato:

 { "default": { "a": { "fill": "none", "viewBox": "0 0 24 24", "stroke": "currentColor", "aria-hidden": "true" }, "path": [ { "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", "d": "M5 10l7-7m0 0l7 7m-7-7v18" } ] }, "solid": { "a": { "viewBox": "0 0 20 20", "fill": "currentColor", "aria-hidden": "true" }, "path": [ { "fill-rule": "evenodd", "d": "M3.293 9.707a1 1 0 010-1.414l6-6a1 1 0 011.414 0l6 6a1 1 0 01-1.414 1.414L11 5.414V17a1 1 0 11-2 0V5.414L4.707 9.707a1 1 0 01-1.414 0z", "clip-rule": "evenodd" } ] } }

Entonces, lo que debe hacer es importar los íconos y usarlos en su matriz de elementos como ya menciona otra respuesta. O alternativamente, importe todos los íconos en su aplicación y haga algo como

 <Icon src={allIcons[name]} />

pero luego pierdes el movimiento del árbol y haces que tu paquete sea mucho más grande.

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda