我目前正在开发一个反应原生的项目,我必须从firebase检索数据并在应用程序中以卡的形式显示它。检索数据并将其存储在数组中(我已使用alert和log进行检查)。但是当我尝试将它映射到渲染功能时。什么都没发生。没错。
constructor() {
super();
this.state={
items:[]
}
ref = firebase.database().ref("users/").orderByKey();
}
componentWillMount()
{
ref.on("value",(snapshot) => {
const itemss=[];
snapshot.forEach((childSnapshot) => {
var userkey = childSnapshot.key;
var userdata = childSnapshot.val();
itemss.push({
key:userkey,
ite:childSnapshot.val().ite,
});
});
this.setState({
items:itemss,
});
});
}
我认为从firebase进行异步数据收集可能会出现问题,但我仍无法解决这个问题。显示它如何显示的代码是:
<View>
{
this.state.items.map(function (i) {
return(
<View onPress={alert(i)} style=
{{marginLeft:100,height:50,
width:150,backgroundColor:'red'}}>
<Text style={{fontSize:50,color:'#000'}}>{i.ite}</Text>
</View>
);
})
}
</View>
请告诉我上述代码中缺少的内容。