TypeError:无法读取undefined的属性'gManager'

时间:2015-05-06 17:12:46

标签: angularjs google-maps-api-3

我正在使用angular-google-map.js。 而且我在控制台窗口中反复出现错误。

TypeError: Cannot read property 'gManager' of undefined
    at Object.fn (ui-googlemap.js:10)
    at n.$digest (angular.min.js:123)
    at angular.min.js:126
    at e (angular.min.js:40)
    at angular.min.js:44

我该如何处理? 我的守则 Html文件

<div id="map-canvas">
        <ui-gmap-google-map center='map.center' zoom='map.zoom'>

            <ui-gmap-markers models="markerList" coords="'self'" idkey="'intClientID'">
            </ui-gmap-markers>

        </ui-gmap-google-map>

控制器文件是

$scope.map = {
            center: {
                latitude: $scope.lat,
                longitude: $scope.long
            },
            zoom: 11,
            markers: [], // array of models to display
            markersEvents: {
                click: function (marker, eventName, model, arguments) {
                    $scope.map.window.model = model;
                    $scope.map.window.show = true;
                }
            },
            window: {
                marker: {},
                show: false,
                closeClick: function () {
                    this.show = false;
                },
                options: {} // define when map is ready
            }
        };
$scope.markerList = /* Service call to get marker point */

markerList从服务中获取。

2 个答案:

答案 0 :(得分:0)

我有同样的问题。我错过了pan属性,documentation指定了该属性。添加pan属性后,错误就消失了。

答案 1 :(得分:0)

我知道这是一个旧的,但我想带来我的经验。 在我的情况下,这个问题解决了初始化markerList变量。

当angular-google-maps创建Markers对象时,需要知道标记数组的长度(即使它是0),如果数组未定义,此过程会中断。

所以只需添加

$scope.markerList = [];

在控制器的第一行。