AngularJS $location.search() 不返回任何内容



我正在使用AngularJS 1.6.4

我的主页网址是http://localhost:8080/AsumForum/

如果用户已成功注册到我的网站,我正在尝试显示成功消息。如果用户已注册,我会将他重定向到主页,我的网址如下所示:http://localhost:8080/AsumForum/?registered=true.

问题是,$location.search(( 永远不会找到 register=true。我试过使$locationProvider与HTML5兼容,但这也不起作用。

这是我的注册.js:

var app = angular.module('reg',[]);
app.controller('valid', ['$scope','$location','$http', 
function($scope,$location,$http){
$scope.send = function(){
var date = new Date();
$scope.user.date=date.toString();
$http({
url: 'http://localhost:8080/AsumForum/webapi/users/register',
dataType: 'json',
method: 'POST',
data: $scope.user,
headers: {
"Content-Type": "application/json"
}
}).then(function success(response){
$scope.res = response.data;
$scope.satus = response.status;
console.log('RES: '+$scope.res+'nSTATUS: '+$scope.status);
window.location="http://localhost:8080/AsumForum/?registered=true";
}, function error(response){
$scope.res = response.statusText;
console.log('Error: +'+$scope.res);
});
}

}](;

这是我的登录名.js

var app = angular.module('mainPage',[]);
app.controller('regsuc',['$scope','$location',function($scope,$location){
$scope.message = '';
var show = $location.search();
for(var i in show){
console.log(i);
}
if(show==true){
$scope.message="Successfull registered! You can now log in.";
}
}]);

日志不返回任何内容。使用console.log(show)返回 [对象对象]。

我真的必须使用路由来传递参数,还是可以像我尝试的那样完成?

注意1:使用$location.url('http://localhost:8080/AsumForum/?registered=true);重定向对我不起作用。

注 2:使用location.search而不是$location.search返回 ?register=true。

只需尝试以下操作

您错过了 $location.search(( 中的参数名称

$location.search().registered

最新更新