ImageBackground组件react-native发生问题

时间:2019-09-28 01:55:00

标签: react-native imagebackground

返回renderRow时,图像背景组件出现问题。

    import back1 from '../../assets/back1.jpg';

    renderRowpost = ({ item }) => {
        return ( 
                MORECONTENT....     
                {item.imgfondo ?  //IF EXIST BACK IMAGEN
                    <View key={"viwid_" + item.postid} style={styles.warptextopost}>
                        <ImageBackground source={back1}>
                            <Text key={"text_id" + item.postid} style={styles.stylpublictext} >{item.posttexto}</Text>
                        </ImageBackground>
                    </View>
                    : //as there is no image I place the text without background
                    <View key={"viwid_" + item.postid} style={styles.warptextopost}>
                         <Text key={"text_id" + item.postid} style={styles.stylpublictext} >{item.posttexto}</Text>
                    </View>
                }       
   )
   }


          //Where I show all the content I get from RenderrenderRowpost

                <FlatList
                    data={this.state.datapost}
                    renderItem={this.renderRowpost}
                    keyExtractor={(item, index) => index.toString()}
                />

,并且出现以下错误: Invariant Violation:元素类型无效-预期为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记了从定义文件中导出组件,或者可能混淆了默认导入和命名导入。 ,但是如果我删除了ImageBackground组件或放置了Image组件(无文本)内部)如果显示正常内容,则仅在放置ImageBackground组件时给我错误,有解决方案吗?我需要在“视图”中放置一个背景图像及其相应的文本,非常感谢..

1 个答案:

答案 0 :(得分:1)

按如下方式加载图像

<ImageBackground source={require('../../assets/back1.jpg')}>
...
</ImageBackground>

我想您不能像导入js模块时那样导入图像。