我正在使用本地反应,我正在为我的按钮创建一个类。该按钮包含图像。在这里,我在视图中减速了我的按钮。
var imageUrl = { //this is a var from a JSON object there could be more than 20 different images
normal: "../assets/images/emoticons/1.png",
selected: "../assets/images/emoticons/1-selected.png"
}
<Button key={index}
selected={true}
onPress={onSelect}
imageUrl={imageUrl} />
在&#39;按钮&#39; I类创建了一个_renderImage函数,用于设置按钮中的图像。
_renderImage(imageUrl){
let image = (selected === true) ? require(imageUrl.normal) : require(imageUrl.selected); //get the right image url
console.log('../assets/images/emoticons/1.png'); //logs '../assets/images/emoticons/1.png'
console.log(typeof('../assets/images/emoticons/1.png')); //logs string
console.log(image); //logs '../assets/images/emoticons/1.png'
console.log(typeof(image)); //logs string
return (
<Image source={require(image)} />
);
}
当我手动设置<Image source= require('../assets/images/emoticons/1.png)} />
时,它会渲染图像。因此图像存在于此位置。
像这样的类似问题并不能解决我的问题: Trouble requiring image module in React Native
答案 0 :(得分:1)
我认为目前在React Native中不可能,根据文档:
请注意,要使其正常工作,必须静态了解require中的图像名称。