AngularJS создает дополнительные области при многократном открытии модального диалога

У меня есть модальное окно с начальной загрузкой angular-UI. Поскольку у меня есть дюжина различных форм, которые я хочу показать в модальном окне, я использую директиву ng-include внутри модального окна. Атрибут src динамически меняется.

Я видел следующее поведение с batarang (даже со статическим src для ng-include):

Каждый раз, когда открывается модальное окно, создается дополнительная область! Поскольку это модальное окно будет открываться и закрываться много раз, я получу десятки новых областей видимости, и приложение станет очень медленным.

index.html:

<body ng-controller="MainCtrl">
  <p><button class="btn" ng-click="showModal()">show Form</button></p>

  <div class="modal" modal="theModal" close="closeModal()">
    <div ng-include src="'form1.html'"></div>
  </div>
</body>

app.js довольно примитивен:

app.controller('MainCtrl', function($scope) {
  $scope.showModal = function() { 
    $scope.theModal = true; 
  };

  $scope.closeModal =function(){
    $scope.theModal = false;
  };  
});

person kwrl    schedule 13.05.2013    source источник
comment
Вот запуск plnkr или изменить plnkr   -  person kwrl    schedule 16.05.2013


Ответы (1)


Похоже, это ошибка в пользовательском интерфейсе angular: https://github.com/angular-ui/bootstrap/pull/232

person kwrl    schedule 16.05.2013