2015-05-24 3 views
2

Я думал, что раньше делал это, но я застрял, пытаясь сделать что-то простое. Это мой HTML, используя ngMapПростой в ngRepeat в ngMap не работает

<html ng-app="myApp" ng-controller="mapCtrl as map"> 
.... 
<map center="52.374, 4.899" zoom="12"> 
    <marker ng-repeat="m in map.data" title="{{m.name}}" position="{{m.lat}},{{m.lng}}"></marker> 
</map> 

, а затем у меня есть контроллер:

angular.module("myApp") 
.controller('mapCtrl', function() { 
    var vm = this; 

    vm.data = [ 
     {"name": "A1", "lat":52.38, "lng":4.9}, 
     {"name": "A2", "lat":52.39, "lng":4.87} 
    ]; 

    return vm; 
}); 

Я в конечном итоге с 6 маркеров все на 0,0, а не 2 в Амстердаме - Смотри Plnkr. Какие-нибудь идеи, что не так?

ответ

1

В этом случае возникает конфликт имен. Директива map создает объект карты в области по уже определенному объекту контроллера. Поэтому просто переименуйте mapCtrl as map в нечто другое. Например, mapCtrl as mapCtrl.

+0

спасибо за наблюдение –

Смежные вопросы