$location inside a $timeout in AngularJS
$location inside a $timeout in AngularJS
我在 AngularJS 中有一个控制器,在 header 中有 $timeout 和 $location。
控制器具有以下代码:
$timeout(function () {
$location.path("/nextview")}, 500, false)
}
由于 $timeout 的异步性质,$location 似乎未通过,因此失败。如果我将 $location 作为函数参数的一部分,它仍然不起作用。
$timeout(function ($location) {
$location.path("/nextview")}, 500, false)
}
但是,如果我只有以下内容,它就可以工作:
$location.path("/nextview")};
我真的需要某种超时,因为位置更改之前的代码是为了给用户一个视觉提示。如果立即更改位置,则没有视觉提示。
是否有更好的暂停或休眠方法,也许是同步的?
提前致谢 :D
尝试这样做
$timeout(function() {
$scope.$apply(function() {
$location.path("/nextview");
});
}, 2000);
如果这不起作用,请检查您的控制台是否有任何错误。
我在 AngularJS 中有一个控制器,在 header 中有 $timeout 和 $location。 控制器具有以下代码:
$timeout(function () {
$location.path("/nextview")}, 500, false)
}
由于 $timeout 的异步性质,$location 似乎未通过,因此失败。如果我将 $location 作为函数参数的一部分,它仍然不起作用。
$timeout(function ($location) {
$location.path("/nextview")}, 500, false)
}
但是,如果我只有以下内容,它就可以工作:
$location.path("/nextview")};
我真的需要某种超时,因为位置更改之前的代码是为了给用户一个视觉提示。如果立即更改位置,则没有视觉提示。
是否有更好的暂停或休眠方法,也许是同步的? 提前致谢 :D
尝试这样做
$timeout(function() {
$scope.$apply(function() {
$location.path("/nextview");
});
}, 2000);
如果这不起作用,请检查您的控制台是否有任何错误。