2015-07-14 3 views
2

Я пытаюсь поместить некоторый HTML-шаблон в ui-gmap-window. HTML содержит директивы, такие как ng-click и ng-repeat, но они не работают.ui-gmap-window с директивами и выражениями

<ui-gmap-google-map bounds="map.bounds" 
         center="map.center" 
         zoom="map.zoom" 
         options="options"> 
     <ui-gmap-window options="windowOpt" 
         show="windowOpt.show" 
         closeClick="closeWindow"> 
     <div class='map-popup'> 
      <div><a ng-click='doIt()' href='#'>Action</a></div> 
      <div ng-repeat="item in list"> 
       {{item.content}} 
      </div> 
     </div> 
     </ui-gmap-window> 
</ui-gmap-google-map> 

Или, может быть, мне нужно использовать другой способ, чтобы создать что-то вроде карусели внутри ui-gmap-window?

Благодаря

Вот пример: http://plnkr.co/edit/k8vvW3

ответ

6

Googled вокруг немного, нашли this Github issue.

Чтобы поместить его в ближайшее время, чтобы использовать нг-повтора (или другие угловые директивы) внутри окна, вам нужно передать внешние параметры шаблона окна и пользовательских шаблонов для вашего <ui-gmap-window> следующим образом:

индекс. HTML:

<ui-gmap-window options="windowOpt" 
    show="windowOpt.show" 
    closeClick="closeWindow" 
    templateUrl="'windowContent.html'" 
    templateParameter="windowParams"> 
</ui-gmap-window> 

script.js:

$scope.windowParams = { 
    list: $scope.list, 
    doIt: function() { 
     return $scope.doIt() 
    } 
} 

windowContent.html:

<div class='map-popup'> 
    <div><a ng-click='parameter.doIt()' href='#'>Action</a></div> 
    <div ng-repeat="item in parameter.list"> 
     {{item.content}} 
    </div> 
</div> 

Plunker продемонстрировать: http://plnkr.co/edit/mu8jfCJhwSHbCghYpdkr?p=preview

+0

Спасибо, человек! Реальное уважение к вам –