Гугл карта для метеора

Я устанавливаю "Метеор добавить dburles: Google-карты" в Метеор. Я добавил этот код в компонент React,

...
import { GoogleMaps } from 'meteor/dburles:google-maps';
...
export default class Location extends TrackerReact(React.Component){
constructor(props) {
    super(props);
    this.state = {
        ...
    };
    GoogleMaps.load();
}
componentDidUpdate(){
    GoogleMaps.create({
      name: 'exampleMap',
      element: document.getElementById('basic_map'),
      options: {
        center: new google.maps.LatLng(-37.8136, 144.9631),
        zoom: 8
      }
    });
}
render() {
    ...
    return (
        ...
                    <div id="basic_map" style={{"width":"300px","height":"300px"}}></div>
        ...
    )
}

Проблема здесь заключается в ошибке "Google не определен". Я думаю, что это из этой строки кода,

google.maps.LatLng(-37.8136, 144.9631),

Я что-то пропустил при установке? Как я могу это исправить? Я использую Meteor, ReactJs, Flow router и TrackerReact

1 ответ

Решение

Это потому, что Google еще не был загружен. Не забудьте проверить GoogleMaps.loaded() прежде чем вы нажмете создать.

Автор, Дэвид Берлес, написал хороший пример, используя библиотеку с реакцией, которая должна быть полезной. Он использует createContainer вместо TrackerReact, но должен вывести вас на правильный путь.

Другие вопросы по тегам