Приложение React-Leaflet неожиданно перестало работать Uncaught TypeError: Невозможно прочитать свойство 'lat' из null - PullRequest
1 голос
/ 16 июня 2019

нужна ваша помощь!Проблема в том, что мое приложение неожиданно перестало работать.Ранее он действительно показывал маркеры. Но теперь я вижу это «Uncaught TypeError: Не могу прочитать свойство 'lat' of null". Это очень странно, потому что он РАБОТАЛ ХОРОШО, и все, что я делал, я помещал их в архив, но когда он был разархивирован, он неработать больше.Я даю код, если он помогает, но уверяю вас, я ничего с этим не сделал.

 componentDidMount(){
 this.loadData()
 }
loadData() {
// fetch('/api/issues').then(response => {
  fetch('/api/issues').then(response => {
  if (response.ok) {
    response.json().then(data => {
      this.setState({markers:data.records});
    });
  } else {
    response.json().then(error => {
      alert("Failed to fetch issues:" + error.message)
    });
  }
}).catch(err => {
  alert("Error in fetching data from server:", err);
});


}
  render() {
    return (
      <div>
         <Map center={{lat:51.505,lng:-0.09}} 
            zoom={13}>
         <TileLayer
            attribution='&copy; 
      <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
          url='http://{s}.tile.osm.org/{z}/{x}/{y}.png'
         /> 

        {this.state.markers.map((position,_id) => 
          <Marker 
             key={_id} 
             position={position}>
          </Marker>
         )}
      </Map>    
    </div>
    );
  }
}

1 Ответ

0 голосов
/ 17 июня 2019

Решение оказалось очень простым. Все произошло из-за того, что некоторые поля в mongoDB под ключами «lat» и «lng» были пустыми, поскольку я не предоставил никакого значения. Таким образом, проблема не имеет ничего общего ни с кодом, ни с зависимостями. Я буду работать над этим позже при написании валидации значений.

...