使用$ location.path时,为什么angular prefix使用'localhost'重定向url?

时间:2014-07-22 05:25:23

标签: angularjs

以下代码片段不会将我重定向到指定的页面(redirectUrl) - 而是在redirectUrl前加上字符串'localhost'。

我最终被重定向到"localhost/http://localhost/example/page".

我该如何避免这种情况?

var redirectUrl =  "http://localhost/example/page";
$location.path(redirectUrl); //redirects to "localhost/http://localhost/example/page".`
$scope.$apply();

2 个答案:

答案 0 :(得分:1)

您需要修改相对路径的路径而不是绝对路径。所以它会是这样的:

var redirectUrl =  "/example/page";
$location.path(redirectUrl); //redirects to "http://localhost/example/page".`

答案 1 :(得分:0)

angular $location服务基于相对网址工作。

要重定向到绝对网址,您可以使用。

window.location.href="http://localhost/example/page"; 或使用角度$window $window.location.href="http://localhost/example/page";