2015-11-27 24 views
7

ile Yerli görüntüleri tepki Ben varyasyonları her türlü denedimBu sorun çalışır dinamik isimlerle

var name = 'ace'; 

<Image source={require('./images/' + name + '.png')} /> 

ama her zaman hata verir:

Bilinmeyen modül gerekli "./images/ace.png". Modülün orada olduğundan eminseniz, paketleyiciyi yeniden başlatmayı deneyin. Bir URL'yi olabilir deneyin kullanan URL

<Image 
    style={styles.img} 
    resizeMode={'contain'} 
    source={{uri: imageURL}}> 

ve imageURL içinde

+0

var name çalışır = gerektirir ('./ resimler/ace.png'); Ama sadece bir şey bitiştirmek olamaz çünkü hala sorunu çözmez veya aynı hata olduğunu atar. Bana bir böcek gibi görünüyor. – Hasen

cevap

0

örneğin

var imageURL = 'http://assets22.pokemon.com/assets/cms2/img/pokedex/full/702.png' 
+1

Bu, bir uygulama olduğu için yerel görüntüler için ne dersiniz? './images/ace.png/' da bir görüntüüm varsa, uri komutu çalışmıyor gibi görünüyor. Herhangi bir hata atmaz ama sadece görüntüyü göstermez. – Hasen

+0

Eğer xcassets gelen varlıklar adı kullanabilirsiniz. Https://facebook.github.io/react-native/docs/images.html#content sayfasına bakın –

+0

Bu şekilde artık çalışmıyor: iOS için geliştirirseniz uri (ör .: source = { 'cuteCat' + sayaç} {uri}) olarak – Hasen

3

yerli docs tepki gereğince,

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

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

ne dersiniz ne olduğunu ilan etmek gerekli ve şartlı olarak kullanmak?

-1

Günümüzde çözüm, bileşen adında Satır: Bu yol buldum

const Row = (props) => { 
    let employmentType; 

    // Set my own image component dynamically 
    if(props.SOME_CONDITION){ 
    employmentType = <Image source={require('image!Driver')} style={styles.employeeLogo} /> 
    } 
    else{ 
    employmentType = <Image source={require('image!ANOTHERIMAGE')} style={styles.employeeLogo} /> 
    } 

    return(
    <View style={styles.row_container} elevation={2}> 

     {employmentType} 
     <Text style={styles.row_text}>{'../Assets/Images/' + props.PictureUrl + '.png'}</Text> 
     <Text style={styles.row_text}>{props.Fullname}</Text> 
     <Text style={styles.row_text}>{props.EmploymentType}</Text> 
    </View> 
); 
};