React Native Maps onMapReady getMapBoundaries

React Native Maps onMapReady getMapBoundaries

我找不到任何修复方法。我正在使用 react-native 地图

const finalMap = () => {

    return(
    <SafeAreaView style={styles.authContainerStyles}>
      <MapView
        style={styles.map}
        provider={PROVIDER_GOOGLE}
        region={{
          latitude:   !!userLocation ? userLocation.coords.latitude : 43.60271848664041,
          longitude: !!userLocation
          ? userLocation.coords.longitude
          : -116.20149258821509,
          latitudeDelta: 0.05,
          longitudeDelta: 0.05,
        }}
        onMapReady = {this.map.getMapBoundaries()}
      >

试试下面的代码或运行这里的小吃:https://snack.expo.io/Cu5qYmcZm

function Map() {
  const [mapRef, updateMapRef] = useState(null);
  const getBoundaries = () => {
    if (mapRef === null) {
      return;
    }
    mapRef
      .getMapBoundaries()
      .then((res) => {
        console.log(res);
      })
      .catch((err) => console.log(err));
  };
  return (
    <View>
      <MapView
        ref={(ref) => updateMapRef(ref)}
        onMapReady={() => getBoundaries()}
      />
    </View>
  );
}

您需要将 ref 存储到地图中,以便稍后(检查边界时)可以参考它。您也可以将其存储在状态中。然后在地图准备好后,事件被触发,我们可以使用 ref 返回它并查询有关边界的信息。