2016-12-05 70 views
0

当我没有结束捏地图时会调用此方法,有无论如何解决这个问题吗?onRegionChangeComplete被调用的次数太多,而不是当真的事件结束时

http://imgur.com/VtKeC1g

下面是代码

<MapView 
    style={{flex:1}} 
    region={{ 
    latitude: parseFloat(this.state.initialPosition.coords.latitude), 
     longitude: parseFloat(this.state.initialPosition.coords.longitude), 
    latitudeDelta, 
    longitudeDelta, 
    }} 
    showsUserLocation={true} 
    onRegionChangeComplete={(region) => { 
     console.log('onRegionChangeComplete called!'); 
    }} 
/> 

回答

0

我胡斯托解决这个问题作出的setTimeout!这里是如何

<MapView 
    style={{flex:1}} 
    showsUserLocation={true} 
    onRegionChange={(region) => { 
     if(this.timeout){ 
      clearTimeout(this.timeout); 
     } 
     this.timeout = setTimeout(() => { 
       this.getDoctorsByGeolocation(region); 
     },1000); 
    }} 
/> 

我希望这可以帮助任何人!

相关问题