我正在使用本机反应,我尝试了两段代码,第一段不起作用,第二段起作用。任何人都可以解释原因吗?
<Image source={require('../assets/'+'g'+'Light.png')}
style={styles.greenLight}/>
<Image source={require('../assets/gLight.png')}
答案 0 :(得分:2)
不允许在React Native中使用动态命名。您应该使用switch,if语句或不同的函数来为您执行此操作:
// GOOD
<Image source={require('./my-icon.png')} />
// 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} />
此处提供更多信息:https://facebook.github.io/react-native/docs/images.html