Динамическая загрузка API Карт Google с AngularJS - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь загрузить Google Maps API, используя AngularJS:

<html data-ng-app="search-app">
<head data-ng-controller="GoogleMaps">
    <script ng-src="{{mapsUrl}}" type="text/javascript"></script>
....
</head>

и контроллер для этой части:

search.controller('GoogleMaps', [
    '$scope','$sce',
    function GoogleMaps($scope,$sce) {
        var mapsUrl = '//maps.google.com/maps/api/js?sensor=false&key=my_api_key';
        $scope.mapsUrl = $sce.trustAsResourceUrl(mapsUrl);
    }
]);

, но когда Google Map API вызывается в поискеконтроллер выдает и выдает ошибку

this.setMap это не функция

для

function CustomMarker(latlng, map, args) {
    this.latlng = latlng;
    this.args = args;
    this.setMap(map);
}

, но когда я заменю {{mapsUrl}} на полнуюURL в заголовке HTML будет работать.

Есть мысли по этому поводу?

1 Ответ

0 голосов
/ 08 декабря 2018

Я добавил URL-адрес к заголовку в качестве сценария при загрузке

function require(url, callback)
{
    var element = document.createElement("script");
    element.src = url;
    element.type="text/javascript";
    element.addEventListener('load', callback);
    document.getElementsByTagName("head")[0].appendChild(e);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...