ng-animate ng-include $ template cache?

时间:2014-02-15 13:09:52

标签: javascript angularjs

好的,我有以下内容:

var app = angular.module('Anim',["ngAnimate"]);
app.controller('ParentController',function($scope){
});
app.directive('home', function ($animate) {
  return {
      templateUrl: 'pantone-inner-home.html',
      restrict: 'AE',
      link: function ($scope, element, attrs) {
          $scope.closemenu = function closemenu(){
            $scope.$parent.mainmenulink = '';
          };
      }
    };
});
app.directive('menuToggle', function () {
  return {
      templateUrl: 'menu-toggle.html',
      restrict: 'AE',
      link: function ($scope, element, attrs) {
        $scope.openmenulink = function openmenulink(){
            $scope.mainmenulink = 'pantone-section.html';
        };
      }
    };
});

使用angulaJS 1.2和ng-animate我的问题是它只是在第一次加载之后动画,这是从$ templatecache中拉出来的,这很好,因为它减少了我的模板加载时间,因为它破坏了我的anaimations。 如何保留templatecache并使用ng-include模板... 我已经提出了一个再现这个错误的plunkr:  http://plnkr.co/edit/1n47lJfxtrDH8xPvCSsW?p=preview

1 个答案:

答案 0 :(得分:1)

据我所知,这不是$tempateCache所致。相反,它看起来更像是你的ng-enter课程在错误的地方。它们应该附加到.nav类,因为它是执行ng-include的元素,因此应该应用ng-enter样式和转换。

我在这里分叉并更新了plunkr:

http://plnkr.co/edit/jSEjM4IiVFrHYTWHrKjZ?p=preview