RN-Image Require中的Prop值语法

时间:2019-02-21 15:14:05

标签: reactjs react-native

我对RN相对较新,并且遇到语法问题。

我需要使用prop值来填充图像的来源。有人可以帮我提供所需的语法吗?

<Image style={AppStyles.buttonRectIcon} source={require('{this.props.buttonIcon})'} />

上面产生一个错误“无效关键字'this”,但是相同的语法在下面的字符串中可以正常工作-

<Text style={AppStyles.buttonRectText}>{this.props.buttonTxt}</Text>

prop值通过以下方式从父组件传递:

  <ButtonRect buttonTxt='Login' buttonIcon={require("../button.png")} buttonIcon='../images/icons/ico-login.png' />

2 个答案:

答案 0 :(得分:1)

require的参数不能为变量。它必须是静态的。 例如require("../sample.png")

如果您打算传递本地图像,则可以发送以下内容:

<ButtonRect buttonTxt='Login' buttonIcon={require('../images/icons/ico-login.png')} />

然后在您的子组件中

<Image 
style={AppStyles.buttonRectIcon} 
source={this.props.buttonIcon} />

如果它是远程URL,则可以这样写

<Image 
style={AppStyles.buttonRectIcon} 
source={{uri: this.props.buttonIcon}}

答案 1 :(得分:0)

尝试

<Image 
style={AppStyles.buttonRectIcon} 
source={{uri: this.props.buttonIcon}} />