我需要先检查类似此帖子的用户。我可以在函数内部操纵值,但是不能在react-native中返回渲染视图。当数据存在时如何返回组件文本视图。现在它什么也不返回
renderlike=(item)=>{
var db = firebase.firestore()
var that = this
db.collection('likedbyuser').doc(item.key).collection('likes').doc(that.state.uid).get()
.then((docSnapshot) => {
if (docSnapshot.exists) {
console.warn('data exist')
return <Text>Liked</Text>
}else{
console.warn('data not exist')
return <Text>Like</Text>
}
})
}
render() {
// console.warn(this.state.data)
return (
<View style={styles.container}>
<FlatList
data={this.state.data}
renderItem={({ item,index }) => (
<View style={{height:160,borderWidth:1,width}}>
<Text style={{marginLeft:15,fontSize:18,marginTop:15}}>{item.username}</Text>
<Text style={{marginLeft:15,fontSize:14,marginTop:15}}>{item.title}</Text>
<View style={{flexDirection:'row'}}>
{this.renderlike(item)}
<Text style={{paddingLeft:15,fontSize:22,paddingTop:15}}>{item.likeCount} </Text>
</View>
</View>
)
}
/>
</View>
);
}
}