Skip to content

Commit 6a9d9ae

Browse files
fix(ui-sref-active): Use $scope.$evalAsync to apply css class
- Reduce digests caused by removing `$timeout` calls - This seems to fix the broken behavior reported in both #2503 and #1997 Closes #2503 Closes #1997 Supercedes #2012
1 parent 27eb5e9 commit 6a9d9ae

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

src/ng1/directives/stateDirectives.ts

+2-5
Original file line numberDiff line numberDiff line change
@@ -461,14 +461,11 @@ let uiSrefActive = ['$state', '$stateParams', '$interpolate', '$transitions', '$
461461
}
462462

463463
function addClass(el: IAugmentedJQuery, className: string) {
464-
el.addClass(className);
465-
$timeout(function () {
466-
el.addClass(className);
467-
});
464+
$scope.$evalAsync(() => el.addClass(className));
468465
}
469466

470467
function removeClass(el: IAugmentedJQuery, className: string) {
471-
el.removeClass(className);
468+
$scope.$evalAsync(() => el.removeClass(className));
472469
}
473470

474471
function anyMatch(state: State, params: Obj) {

0 commit comments

Comments
 (0)