我需要在地图中加载标记,但我想加载那些位于应用程序显示区域内的标记。 要做到这一点,我需要地图中显示的最东北和最西南的坐标。所以我可以使用MongoDB中的$ geoWithin和$ box运算符找到标记。
我如何获得地图界限?坐标位于地图的shwon区域的西南和东北方向?
答案 0 :(得分:1)
============== UPDATE ============
以下是aforty
在github上的解决方案:
<MapView onRegionChangeComplete={(center) => {
let northeast = {
latitude: center.latitude + center.latitudeDelta / 2,
longitude: center.longitude + center.longitudeDelta / 2,
}
, southwest = {
latitude: center.latitude - center.latitudeDelta / 2,
longitude: center.longitude - center.longitudeDelta / 2,
};
console.log(center, northeast, southwest);
}} />
&#13;
以下是问题的链接:
https://github.com/lelandrichardson/react-native-maps/issues/356
==================================
您可以在地图上指定onRegionChange
和onRegionChangeComplete
。当用户拖动地图和拖动完成时,将调用这些函数。您将一个region对象作为函数的参数,这是一个{latitude: 123, longitude: 123, latitudeDelta: 12, longitudeDelta: 12}
的对象。您可以使用它来计算边界框。
https://facebook.github.io/react-native/docs/mapview.html#onregionchange