2013-07-02 2 views
2

В одном из моих частичных, я делаю это:нг-анимация на нг-если делает «ввести», но не «уйти», когда stateparams изменить

<!-- Lesson Details --> 
<div class="panel" id="change_subject" ng-if="$state.includes('dashboard.create.lessons')" ng-animate="{enter: 'basic-animation-enter', leave: 'basic-animation-leave'}"> 
    <div class="panel_header"> 
    <div class="panel_title"> 
     <h5> 
     Lesson Details 
     </h5> 
    </div> 
    </div> 
</div> 

$ state.includes прямо из примера углового ui-маршрутизатора. Конечно, я использую угловые ui.

Вот моя функция appState:

state('dashboard.create.lessons.detail', { 
     // parent: 'lessons', 
     url: '/{lessonId}', 
     views: { 
      '[email protected]': { 
      templateUrl: "/app/partials/create.detail.html", 
      controller: ['$scope', '$stateParams', 'curriculumHash', function(scope, stateParams, curriculumHash){ 
       curriculumHash.sstHash().then(function() { 
       scope.selectedContent = findInList(scope.sstArray, stateParams.lessonId); 
       scope.original = angular.copy(scope.selectedContent); 
       }); 
      }], 
      } 
     } 
     }) 

Довольно обычный.

Когда частичный перезагружается для каждого нового stateParam, ng-if создает новый элемент DOM (с новым Hash $$). И каждый раз, когда он вызывает анимацию ввода, нет проблем. Но элемент DOM, который уничтожается, не вызывает «отпуск».

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

Спасибо!

========== ОБНОВЛЕНИЕ =========== Вот JSFiddle. Не заимствует много из приведенного выше кода, но я считаю, что я уверен. http://jsfiddle.net/morgs32/xPxkX/1

+0

Дайте нам jsfiddle. Не лучше использовать тот же класс для ввода и оставить –

+0

Моя ошибка - это теперь отредактировано, и в моей реальной реализации оно выглядит одинаково. Я буду работать над jsfiddle, чтобы продемонстрировать эту проблему. – morgs32

+0

Вот jfiddle. Я не знаю, с чего начать. Анимация ng-switch не работает. Но они делают, если вы используете угловой 1.1.4. И анимация ng-if работает над «enter» некоторое время? !! Так ошеломлен. JSFiddle: http://jsfiddle.net/morgs32/xPxkX/1 – morgs32

ответ

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

  • Нет связанных вопросов^_^