2016-11-20 84 views
0

我想发布的数据API, 后重定向到其他角页我输入验证码重定向:

$scope.Proceed = function() { 
     DataService.InsertPerson($scope.p) 
     .then(function success(data) { 
      $scope.p.ID = data.data; 
      var url = "http://" + $window.location.host + "/#/show/person/"; 
      $window.location.href = url + data.data; //adding ID to url 
     }); 
    }; 

页面重定向正确,但角抛出一个错误:

Error: $rootScope:infdig Infinite $digest Loop

我tryed $位置,但相同的结果。

感谢您的时间

+0

您正在使用哪台路由器? – charlietfl

回答

1

而不是做一个重定向与$window.location.href,你可以用AngularJS $location更改URL,并将其添加到历史堆栈:

$location.url('/show/person/' + data.data); 

或者:

$location.path('/show/person/' + data.data); 

两种方法都是getter/setter

  • $location.url斜线后返回整个URL,包括 搜索字符串参数和改变路径,搜索和哈希,当参数调用和返回$location
  • $location.path返回斜杠后不包含搜索字符串参数的URL部分,用参数调用时返回$location
+0

更改代码并使用$ location,Angular路由到默认页面后。 –

+0

必须检查新的url格式是否正确,并且存在于你的路由中,并且还要检查从成功函数返回的'data.data'是否是有效的有效值。 –

+0

请参阅我已经使用'/#/ show /人'/'类似于你..试试:'$ location.url('/ show/person /'+ data.data);' –