2

Ich möchte meine anfängliche Region ändern, wenn einige Position in der Karte verschieben, ich verwendet onRegionChangeComplete-Funktionalität für das, aber es ruft zweimal oder Trice auf einmal.onRegionChangeComplete-Funktion Aufruf mehrere Male mit reaktiven nativen Karten

Hier ist mein Code:

onRegionChangeComplete(region) { 
    if(!this.state.initialRegionChange){ 
     console.log("changeRegion:"+JSON.stringify(region)) 
     var initialRegion = { 
     latitude: region.latitude, 
     longitude :region.longitude, 
     latitudeDelta: LATITUDE_DELTA, 
     longitudeDelta: LONGITUDE_DELTA 
     } 
     var lat = parseFloat(region.latitude) 
     var lang = parseFloat(region.longitude) 
    }else{ 
     this.setState({ 
     initialRegionChange:false 
     }) 
    } 
    } 

render(){ 
    return(
    <MapView 
      ref="map" 
      style={styles.map} 
      initialRegion={this.state.region} 
      provider={MapView.PROVIDER_DEFAULT} 
      zoomEnabled={true} 
      onRegionChangeComplete={this.onRegionChangeComplete.bind(this)} 
      pitchEnabled={true} 
      showsCompass={true} 
      showsBuildings={true} 
      showsUserLocation={true} 
      showsTraffic={true} 
      showsIndoors={true} 
      /> 
    ) 
} 

bitte geben Sie mir Hinweise darauf, dass, wie dieses Problem zu lösen.

Jede Hilfe sehr geschätzt.

Hier ist Modul Link, dem ich folge. https://github.com/react-community/react-native-maps

+0

Sie können es durch Logik behandeln. Definieren Sie einen bestimmten Radius oder Abstand. Ihr onRegionChangeComplete funktioniert also nicht zweimal oder dreimal –

Antwort

0

Dies ist ein dokumentiertes Problem mit react-native-maps und es gibt sogar einen Antrag Pull vorgelegt, es zu beheben: https://github.com/react-community/react-native-maps/pull/1597. Sie können die Pull-Anforderung entweder direkt in Ihre lokale Kopie von react-native-maps zusammenführen oder darauf warten, dass sie freigegeben wird. Ich würde empfehlen, der PR Ihre Unterstützung hinzuzufügen, um mehr Aufmerksamkeit darauf zu lenken und es schneller zusammenzuführen. Ich weiß, es ist keine Lösung für Ihre Frage, aber Sie können im Moment nichts in Ihrem Quellcode tun, um es zu beheben - Sie müssen die Bibliothek selbst ändern. Hoffe das hilft!

Verwandte Themen