2017-05-26 5 views
1

Vielen Dank im Vorausreagieren nativen Zugriff Variable außerhalb componentDidMount fuction

I currentPostion aus getCurrentPosition Funktion zugreifen müssen in reagieren nativer und ich Anfänger bin in nativer reagieren.

Code:

constructor(props) { 
    super(props) 
    this.state = { 
    coords: [], 
    currentPostion: "" 
    } 
} 

componentDidMount() { 
    navigator.geolocation.getCurrentPosition(
    (position) => { 
     var initialPosition = JSON.stringify(position); 
     this.setState({'currentPostion':initialPosition}); 
    }, 
    (error) => alert(error.message), 
    {enableHighAccuracy: true, timeout: 20000, maximumAge: 1000} 
); 
    alert(JSON.stringify(this.state)); 
} 

Help Me !!!

Antwort

1

currentPosition wird zunächst undefiniert sein und seit seiner internen KomponenteDidmount .. wird es zu einem späteren Zeitpunkt aktualisiert werden. Sie müssen warten, bis die Werte aktualisiert sind und dann auf sie zugreifen. U kann ein Ladesymbol verwenden, um zu warten, bis der Status aktualisiert wird, und nachdem es nicht undefined u kann auf die Werte zugreifen.

if(this.state.currentPosition === ""){ return( <ActivityIndicator /> ) } return ( <Component lat={this.state.currentPosition} /> );

donot vergessen Aktivitätsanzeige zu importieren