fix(ngView): ensure the new view element is placed after the old view element

Closes #4362
This commit is contained in:
Matias Niemelä 2013-10-17 14:29:06 -04:00 committed by Misko Hevery
parent 2623de1426
commit 3f568b22f9
2 changed files with 8 additions and 9 deletions

View file

@ -207,10 +207,10 @@ function ngViewFactory( $route, $anchorScroll, $compile, $controller,
if (template) {
var newScope = scope.$new();
linker(newScope, function(clone) {
cleanupLastView();
clone.html(template);
$animate.enter(clone, null, $element);
$animate.enter(clone, null, currentElement || $element);
cleanupLastView();
var link = $compile(clone.contents()),
current = $route.current;

View file

@ -599,9 +599,9 @@ describe('ngView animations', function() {
$location.path('/bar');
$rootScope.$digest();
var itemA = $animate.flushNext('leave').element;
var itemA = $animate.flushNext('enter').element;
expect(itemA).not.toEqual(itemB);
var itemB = $animate.flushNext('enter').element;
var itemB = $animate.flushNext('leave').element;
}));
it('should render ngClass on ngView',
@ -635,8 +635,8 @@ describe('ngView animations', function() {
$location.path('/bar');
$rootScope.$digest();
$animate.flushNext('leave').element;
item = $animate.flushNext('enter').element;
$animate.flushNext('enter').element;
item = $animate.flushNext('leave').element;
$animate.flushNext('addClass').element;
$animate.flushNext('addClass').element;
@ -679,12 +679,11 @@ describe('ngView animations', function() {
$location.path('/bar');
$rootScope.$digest();
$animate.flushNext('enter'); //ngView new
$animate.flushNext('leave'); //ngView old
$rootScope.$digest();
$animate.flushNext('enter'); //ngView new
expect(n(element.text())).toEqual(''); //this is midway during the animation
$animate.flushNext('enter'); //ngRepeat 3