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

715
Visualizações
React Native - Módulo de solicitud de imagen usando nombres dinámicos

Actualmente estoy creando una aplicación de prueba usando React Native. El módulo Imagen hasta ahora ha estado funcionando bien.

Por ejemplo, si tuviera una imagen llamada avatar , el siguiente fragmento de código funciona bien.

 <Image source={require('image!avatar')} />

Pero si lo cambio a una cadena dinámica, obtengo

 <Image source={require('image!' + 'avatar')} />

me sale el error:

Requiere módulo desconocido "image!avatar". Si está seguro de que el módulo está allí, intente reiniciar el empaquetador.

Obviamente, este es un ejemplo artificial, pero los nombres de imágenes dinámicas son importantes. ¿React Native no admite nombres de imágenes dinámicas?

Reaccionar error nativo con nombre de imagen dinámica

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Esto se trata en la documentación en la sección " Recursos estáticos ":

La única forma permitida de referirse a una imagen en el paquete es escribir literalmente require('imagen!nombre-del-activo') en la fuente.

 // GOOD <Image source={require('image!my-icon')} /> // BAD var icon = this.props.active ? 'my-icon-active' : 'my-icon-inactive'; <Image source={require('image!' + icon)} /> // GOOD var icon = this.props.active ? require('image!my-icon-active') : require('image!my-icon-inactive'); <Image source={icon} />

Sin embargo, también debe recordar agregar sus imágenes a un paquete xcassets en su aplicación en Xcode, aunque parece por su comentario que ya lo ha hecho.

http://facebook.github.io/react-native/docs/image.html#adding-static-resources-to-your-app-using-images-xcassets

over 4 years ago · Santiago Trujillo Relatório

0

Esto funcionó para mí:

Creé un componente de imagen personalizado que toma un valor booleano para verificar si la imagen es de la web o se pasa desde una carpeta local.

 // In index.ios.js after importing the component <CustomImage fromWeb={false} imageName={require('./images/logo.png')}/> // In CustomImage.js which is my image component <Image style={styles.image} source={this.props.imageName} />

Si ve el código, en lugar de usar uno de estos:

 // NOTE: Neither of these will work source={require('../images/'+imageName)} var imageName = require('../images/'+imageName)

Estoy enviando todo el require('./images/logo.png') como accesorio. ¡Funciona!

over 4 years ago · Santiago Trujillo Relatório

0

RELEVANTE SI CONOCES IMÁGENES (URLS):

La forma en que me abrí camino a través de este problema:

Creé un archivo con un objeto que almacenaba la imagen y el nombre de la imagen:

 export const ANIMAL_IMAGES = { dog: { imgName: 'Dog', uri: require('path/to/local/image') }, cat: { imgName: 'Cat on a Boat', uri: require('path/to/local/image') } }

Luego importé el objeto al componente donde quiero usarlo y solo hice mi representación condicional así:

 import { ANIMAL_IMAGES } from 'path/to/images/object'; let imgSource = null; if (condition === 'cat') { imgSource = ANIMAL_IMAGES.cat.uri; } <Image source={imgSource} />

Sé que no es la forma más eficiente, pero definitivamente es una solución.

¡Espero eso ayude!

over 4 years ago · Santiago Trujillo 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