我有一个名为data.js的文件,我在其中导出一个对象,其中一个元素是图像。这是它的外观:错误传递必需()图像作为道具
var data = [
{
"id": 1,
"Category": "Category Title",
"Image": require("../images/comingsoon.png"),
"Summary": ""
},
然后在另一个分量I导入数据变量,我通过data.Image到另一个组件如使用FlatList道具。
<FlatList
style={{margin:5}}
numColumns={2}
data={this.state.data}
renderItem={({item}) => item}
/>
item
看起来是这样的:
<CategoryItem key={item.id} Image={item.Image} Category={item.Category}/>
然后我用图片道具里面CategoryItem像这样:
<Image source={this.props.item.Image} style={styles.CategoryImage}>
这完美的作品...... 但我想要的!简单地将Item作为道具传递给CategoryItem,如下所示:
<CategoryItem key={item.id} item={item}/>
而且一旦内部CategoryItem,我会做:
render(){
const {Category, Image} = this.props.item;
,并调用图像只需做
<Image source={Image} style={styles.CategoryImage}>
然而,当我这样做,应用程序崩溃和它说,Image
是一个号码。
记录什么item
样子后,我发现require()
ING将图像分成若干,它应该简单地通过它的工作方式不同,它崩溃。有什么想法吗?
你真的在使用RequireJS吗?如果不是,则应删除该标记,因为RequireJS是特定产品。如果您使用的是RequireJS,那么您的问题需要编辑,以便解释如何使用它(不,因为没有理由相信它实际上是您问题的一个因素。 – Louis