Skip to content

Commit 6ac1c61

Browse files
release 0.3.1
1 parent f9592e1 commit 6ac1c61

File tree

2 files changed

+16
-15
lines changed

2 files changed

+16
-15
lines changed

release/angular-ui-router.js

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/**
22
* State-based routing for AngularJS
3-
* @version v0.3.0
3+
* @version v0.3.1
44
* @link http://angular-ui.github.com/
55
* @license MIT License, http://www.opensource.org/licenses/MIT
66
*/
@@ -3355,7 +3355,7 @@ function $StateProvider( $urlRouterProvider, $urlMatcherFactory) {
33553355
$urlRouter.update(true);
33563356

33573357
return $state.current;
3358-
}, function (error) {
3358+
}).then(null, function (error) {
33593359
if ($state.transition !== transition) return TransitionSuperseded;
33603360

33613361
$state.transition = null;
@@ -3986,7 +3986,7 @@ function $ViewDirective( $state, $injector, $uiViewScroll, $interpolate,
39863986
}
39873987

39883988
if (currentEl) {
3989-
var $uiViewData = currentEl.data('$uiView');
3989+
var $uiViewData = currentEl.data('$uiViewAnim');
39903990
renderer.leave(currentEl, function() {
39913991
$uiViewData.$$animLeave.resolve();
39923992
previousEl = null;
@@ -3999,7 +3999,7 @@ function $ViewDirective( $state, $injector, $uiViewScroll, $interpolate,
39993999

40004000
function updateView(firstTime) {
40014001
var newScope,
4002-
name = getUiViewName(scope, attrs, inherited, $interpolate),
4002+
name = getUiViewName(scope, attrs, $element, $interpolate),
40034003
previousLocals = name && $state.$current && $state.$current.locals[name];
40044004

40054005
if (!firstTime && previousLocals === latestLocals) return; // nothing to do
@@ -4022,14 +4022,14 @@ function $ViewDirective( $state, $injector, $uiViewScroll, $interpolate,
40224022

40234023
var clone = $transclude(newScope, function(clone) {
40244024
var animEnter = $q.defer(), animLeave = $q.defer();
4025-
var viewData = {
4026-
name: name,
4025+
var viewAnimData = {
40274026
$animEnter: animEnter.promise,
40284027
$animLeave: animLeave.promise,
40294028
$$animLeave: animLeave
40304029
};
40314030

4032-
renderer.enter(clone.data('$uiView', viewData), $element, function onUiViewEnter() {
4031+
clone.data('$uiViewAnim', viewAnimData);
4032+
renderer.enter(clone, $element, function onUiViewEnter() {
40334033
animEnter.resolve();
40344034
if(currentScope) {
40354035
currentScope.$emit('$viewContentAnimationEnded');
@@ -4074,14 +4074,14 @@ function $ViewDirectiveFill ( $compile, $controller, $state, $interpolate
40744074
var initial = tElement.html();
40754075
return function (scope, $element, attrs) {
40764076
var current = $state.$current,
4077-
$uiViewData = $element.data('$uiView'),
4078-
locals = current && current.locals[$uiViewData.name];
4077+
name = getUiViewName(scope, attrs, $element, $interpolate),
4078+
locals = current && current.locals[name];
40794079

40804080
if (! locals) {
40814081
return;
40824082
}
40834083

4084-
extend($uiViewData, { state: locals.$$state });
4084+
$element.data('$uiView', { name: name, state: locals.$$state });
40854085
$element.html(locals.$template ? locals.$template : initial);
40864086

40874087
var resolveData = angular.extend({}, locals);
@@ -4112,9 +4112,10 @@ function $ViewDirectiveFill ( $compile, $controller, $state, $interpolate
41124112
* Shared ui-view code for both directives:
41134113
* Given scope, element, and its attributes, return the view's name
41144114
*/
4115-
function getUiViewName(scope, attrs, inherited, $interpolate) {
4115+
function getUiViewName(scope, attrs, element, $interpolate) {
41164116
var name = $interpolate(attrs.uiView || attrs.name || '')(scope);
4117-
return name.indexOf('@') >= 0 ? name : (name + '@' + (inherited ? inherited.state.name : ''));
4117+
var uiViewCreatedBy = element.inheritedData('$uiView');
4118+
return name.indexOf('@') >= 0 ? name : (name + '@' + (uiViewCreatedBy ? uiViewCreatedBy.state.name : ''));
41184119
}
41194120

41204121
angular.module('ui.router.state').directive('uiView', $ViewDirective);

0 commit comments

Comments
 (0)