我很抱歉,但我仍然对React Native很新,我的术语和词汇仍然相当有限。我目前正在尝试通过从Firebase获取数据来生成地图标记。截至目前,我能够使用变量中的坐标检索信息;但我无法更新listingData
数组。在调试器模式下,它显示listingData
未定义
另外,我对代码的第二部分不太确定,假设假设调用listingData
中的坐标,然后将标记放在地图上。
如果有人有任何建议会非常感激。
非常感谢,
担
export default class GetMarkers extends Component {
constructor(props) {
super(props);
this.state = {
listingData: []
}
}
componentWillMount(){
let q = firebase.database().ref('profiles');
q.on('value', (snap) => {
var finished = []
snap.forEach((data) => {
let result = data.val();
result["key"] = data.key;
finished.push(result);
})
this.setState({
listingData: finished
})
})
}
render() {
return(
<MapView>
{this.state.listingData.map(x => (
<MapView.Marker
title={x.fName}
key={x.key}
description={'Test'}
coordinate={{
latitude: x.lat,
longitude: x.lon
}} />
))
}
</MapView>
)
}
}