diff options
Diffstat (limited to 'src/ng/directive/ngIf.js')
| -rw-r--r-- | src/ng/directive/ngIf.js | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/src/ng/directive/ngIf.js b/src/ng/directive/ngIf.js index dcb3825d..a05d30d0 100644 --- a/src/ng/directive/ngIf.js +++ b/src/ng/directive/ngIf.js @@ -94,9 +94,12 @@ var ngIfDirective = ['$animate', function($animate) {              if (!childScope) {                childScope = $scope.$new();                $transclude(childScope, function (clone) { +                clone[clone.length++] = document.createComment(' end ngIf: ' + $attr.ngIf + ' '); +                // Note: We only need the first/last node of the cloned nodes. +                // However, we need to keep the reference to the jqlite wrapper as it might be changed later +                // by a directive with templateUrl when it's template arrives.                  block = { -                  startNode: clone[0], -                  endNode: clone[clone.length++] = document.createComment(' end ngIf: ' + $attr.ngIf + ' ') +                  clone: clone                  };                  $animate.enter(clone, $element.parent(), $element);                }); @@ -109,7 +112,7 @@ var ngIfDirective = ['$animate', function($animate) {              }              if (block) { -              $animate.leave(getBlockElements(block)); +              $animate.leave(getBlockElements(block.clone));                block = null;              }            } | 
