我正在尝试如此角度重定向,但是我只有部分路径。目前我已设法更改URL,但我想转到该网址,而不是仅仅更改它。
scope.socialReturnUrl = function ( path ) {
location.url( path + 'assessment' );
};
我的下面代码似乎只更改了网址或位置。我错过了什么来应用它,所以它被重定向?
我应该指出,我已经尝试使用范围$ apply()但是这会导致以下错误:
范围$ apply未定义
我已经将范围作为依赖,但我还没有应用依赖这是我需要的东西吗?
让我知道你的想法!
答案 0 :(得分:2)
您需要在控制器中注入$location服务才能更改网址。如果你不这样做,你将会调用window.location对象,这不是你应该做的。
var app = angular.module('myApp');
app.controller('MyController',
['$scope', '$location',
function($scope, $location) {
$scope.socialReturnUrl = function ( path ) {
$location.url( path + 'assessment' );
};
}])
答案 1 :(得分:0)
是的......我自己解决了这个问题。
显然,location.url()不会像文档中那样进行完全刷新。
https://docs.angularjs.org/guide/ $位置
但是,您需要添加依赖项$窗口并使用以下代码使页面重新加载整页。
window.location.href =路径+'评估';