请删除此问题,有人在另一个主题上帮助了我。
我正在尝试在我的应用中的某些时间生成标记,以便在启动时显示空白地图,但稍后,标记会在某些时间显示并消失。
我的状态变量设置如下:
class Map extends Component {
state = {
markers: [{
key: null,
contactName: null,
location: null,
}]
}
我尝试生成标记的代码如下:
renderMarker = ({ key, contactName, location }) => {
console.log('renderMarker: ' + key + ', ' + contactName + ', ' + location);
return this.state.markers.map(Marker => (
<MapView.Marker
key = { key }
coordinate = {{
latitude: location[0],
longitude: location[1]
}}
//image = { carIcon }
title = { contactName } />
))
}
其中的console.log正在生成正确的数据,因此返回例如:
renderMarker: 389djhJHDjdkh392sdk, Steve, -30.498767387,120.4398732
我的渲染功能如下所示:
render() {
return (
<MapContainer>
<MapView
style = { styles.map }
region = { this.state.mapRegion }
showsUserLocation = { true }
followUserLocation = { true }
onRegionChangeComplete = { this.onRegionChangeComplete.bind(this) }>
</MapView>
</MapContainer>
)
}
但地图上没有任何内容。我一直在搜索互联网,但我找不到一个可以跟随的例子。我是否需要在render()函数中添加一些内容才能使其工作?我的想法是我不需要的,因为renderMarker正在做这项工作。
任何想法的人?