【发布时间】:2018-08-28 16:49:36
【问题描述】:
试图让我的应用程序中的地图视图动态地重新填充自己,我真的很难过。首先,我尝试执行以下操作:
render()
{
const neoMarker = (lat, long, title, desc) => {
<MapView.Marker
coordinate={{latitude: lat,
longitude: long,}}
title={title}
description={desc}
onPress={() => this.setState({jvisible: true})}>
<FAB
small
icon="add"
onPress={() => this.setState({jvisible: true})}/>
</MapView.Marker>
}
var noGuest = 5;
var test = 37.43538;
for(let i = 0; i < noGuest; i++){
markerL.push(neoMarker(test, -122.4324, "New Job", "Testing Marker List"));
test = test + 0.01000;
}
}
return (
<View style={styles.container}>
<MapView
style={{ flex: 1 }}
initialRegion={{
latitude: 37.78825,
longitude: -122.4324,
latitudeDelta: 0.0922,
longitudeDelta: 0.0421,
}}>
{markerL}
</MapView>
这不起作用,地图没有标记,所以我尝试像以前一样做,除了使用索引,在这种情况下,markerL[0]。这也不起作用。因此,我最终尝试通过调用 neoMarker 函数本身而不是带有一些通用输入的 {markerL} 来填充 make,并且 mapview 仍然不会呈现任何标记。
当明确定义标记时,它们会出现,但这并不实用 当前开发版本之外的方法。
因此,MapView 是否明确不允许隐式标记列表?
PS:我正在使用 Expo (https://expo.io/) 在移动设备上测试和调试我的代码。
【问题讨论】:
标签: javascript react-native expo react-native-maps