Как загрузить gavascript google-maps только в шаблоне?

0

Я использую google maps javascript api и хочу загрузить файл javascript только на странице, где фактически отображается карта.

Когда я загружаю карты внутри <script> в index.html, все в порядке.

<body>
    <div ng-view></div>

    <script>...</script>
</body>

Но когда я переношу скрипт в шаблон, который должен быть включен, он не работает:

maps.html:

<div id="google-map">
    ...
</div>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>

контроллер:

var gmap = new google.maps.Map(document.getElementById('google-map'), {
    center: location,
    zoom: 10
});

Результат: Error: google.maps is undefined.

Вопрос: как я могу убедиться, что скрипт загружен только на нужную страницу и что он загружен до того, как будет создан экземпляр в controller?

  • 0
    Пожалуйста, добавьте скрипку :)
Теги:
google-maps

1 ответ

0

нужно добавить скрипт перед div, надеюсь, что это может сработать

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>
<div id="google-map">
    ...
</div>
  • 0
    Нет, это не меняет проблему.
  • 0
    Итак, вам нужно загрузить скрипт до загрузки HTML-страницы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню