Angularjs 如何从一个复杂的url中提取路由参数,该url包含诸如';之类的符号''&';
我有一个像这样的URL url:'/reset/password?email=:userEmail&reset\u token=:passwordResetToken'Angularjs 如何从一个复杂的url中提取路由参数,该url包含诸如';之类的符号''&';,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我有一个像这样的URL url:'/reset/password?email=:userEmail&reset\u token=:passwordResetToken' 但是尝试使用$stateParams访问它。passwordResetToken返回未定义的请详细说明;在角冒号部分中不需要“=:” url:'/reset/password?email=userEmail&reset_token=passwordResetToken' 在controller中,您可以插入$state
但是尝试使用$stateParams访问它。passwordResetToken返回未定义的请详细说明;在角冒号部分中不需要“=:”
url:'/reset/password?email=userEmail&reset_token=passwordResetToken'
在controller中,您可以插入$stateParams,然后您就不会得到未定义的您可以使用该服务,该服务是为解析AngularJS中的URL而创建的
这应该行得通
$location.search() // will return {email: 'userEmail', reset_token: 'passwordResetToken'}
你也可以使用
$location.search('userEmail')
通过查看您的URL,我认为您使用的路线如下:
.state('something.resetPassword', {
url: "/reset/password",
params: {
email: null,
reset_token: null
},
templateUrl: 'your_template.html'
})
然后,您应该使用$stateParams
访问参数,如下所示:
$stateParams.email //gives email
$stateParams.reset_token //gives token
希望这对你有帮助 url:'/reset/password?:email&:reset\u token&:role'解决了我正在使用的问题stateparms可以获取它。是,我已在控制器中注入$stateParams。$stateParams.reset_令牌的值为passwordResetToken。