title: Error while updating property 'coordinate' of a view managed by: AIRMapMarker (React native)
body: <p>I have been searching the web for proper documentation in regards to this error, am in in no luck as i am unable to determine the cause of this error. </p>
  
  <p>Here is the my entire code:</p>
  
  <p><strong>First section:</strong> setting the states</p>
  
  <pre><code>export default class Whereto extends Component&lt;{}&gt; {
  
  constructor(props) {
      super(props);
  
      this.state = {
          latitude: null,
          longitude: null,
          location: null,
          error: null,
          markers:[],
  
      };
  }
  </code></pre>
  
  <p><strong>Second section</strong> Component did Mount</p>
  
  <pre><code>componentDidMount() {
          navigator.geolocation.getCurrentPosition(
              (position) =&gt; {
                  this.setState({
                      latitude: position.coords.latitude,
                      longitude: position.coords.longitude,
                      error: null,
                  });
  
                  //geocode api
                  var myApiKey = '';
  
                  fetch('https://maps.googleapis.com/maps/api/geocode/json?address=' + position.coords.latitude + ',' + position.coords.longitude + '&amp;key=' + myApiKey)
                      .then((response) =&gt; response.json())
                      .then((responseJson) =&gt; {
                          //console.log('ADDRESS GEOCODE is BACK!! =&gt; ' + JSON.stringify(responseJson));
                          var locationName = responseJson.results[0].address_components.filter(x =&gt; x.types.filter(t =&gt; t === 'administrative_area_level_2').length &gt; 0)[0].short_name;
                          //console.log(locationName);
                          this.setState({
                              location: locationName,
                          })
                      })
  
                  //nearby api
                  var apiPlaceskey = '';
                  //https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&amp;radius=500&amp;type=restaurant&amp;keyword=cruise&amp;key=YOUR_API_KEY
  
                  fetch('https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=' + position.coords.latitude + ',' + position.coords.longitude + '&amp;radius=2000&amp;type=bus_station&amp;key=' + apiPlaceskey)
                      .then((respplaces) =&gt; respplaces.json())
                      .then((responseJson2) =&gt; {
  
                          const markers = responseJson2.results.map((result) =&gt; ({
                              latlng: {
                                  latitude: result.geometry.location.lat,
                                  longitude: result.geometry.location.lng,
                              }
                          }));
  
                          this.setState({ markers });
                      });
  
  
              },
              (error) =&gt; this.setState({error: error.message}),
              {enableHighAccuracy: true, timeout: 20000, maximumAge: 1000},
  
          );
  
  
      }
  </code></pre>
  
  <p><strong>Third section</strong>: A function reserved when a a touchable button is tapped on my render and View section</p>
  
  <pre><code>fetchDirections = () =&gt; {
          //directions api
          var apiDirectionskey = '';
          //const {location} = this.state;
          const {latitude} = this.state;
          const {longitude} = this.state;
  
          fetch('https://maps.googleapis.com/maps/api/directions/json?origin=' + latitude + ',' + longitude + '&amp;destination=' + goingto + '&amp;mode=transit&amp;transit_mode=bus&amp;key=' + apiDirectionskey)
              .then((resdirections) =&gt; resdirections.json())
              .then((responseJson3) =&gt; {
  
                  console.log(responseJson3);
  
              });
  
  
          }
  
      render(){
  
          return(
              &lt;View style={styles.container}&gt;
                  &lt;Mainlogo/&gt;
                  &lt;TextInput style={styles.boxInput} underlineColorAndroid='rgba(0,0,0,0)' placeholder="Going To?"
                             underlineColorAndroid='transparent'
                             onChangeText={(dest) =&gt; this.setState({goingto : dest})}
                  /&gt;
                  &lt;TouchableOpacity style={styles.button} onPress={this.fetchDirections.bind(this)}&gt;
                      &lt;Text style={styles.textButton}&gt; Go {this.props.type}&lt;/Text&gt;
                  &lt;/TouchableOpacity&gt;
  
                  &lt;MapView style={styles.map}
                           region={{
                               latitude: this.state.latitude,
                               longitude: this.state.longitude,
                               latitudeDelta: 0.02,
                               longitudeDelta: 0.02
                           }}
                  &gt;
  
                  &lt;/MapView&gt;
  
                  &lt;MapView.Marker
                      coordinate={{
                          latitude: this.state.latitude,
                          longitude: this.state.longitude,
                          latitudeDelta: 0.02,
                          longitudeDelta: 0.02
                      }}
                      image={require('../img/my-pin-512.png')}
                      title={'you are here'}
                  /&gt;
  
                  {this.state.markers.map(marker =&gt; (
                      &lt;MapView.Marker
                          coordinate={marker.latlng}
                          image={require('../img/busstop.png')}
  
                      /&gt;
  
                  ))}
  
  
  
  
  
              &lt;/View&gt;
          )
  
      }
  }
  </code></pre>
  
  <p>To get to this stage a touchableopacity is tapped from my main profile page. I realised that i am using componendDidMount and a seperate fetch function to call another API call. It seems that it is not getting enough time to pupulate the states to cause the null values</p>
  
  <p><a href="https://i.stack.imgur.com/qniPZ.png" rel="noreferrer"><img src="https://i.stack.imgur.com/qniPZ.png" alt="enter image description here"></a></p>