如何设置查询字符串?
样品:
$location.path('/voucher-view?token=' + token);
如何检索值?
示例:
var url = $location.search();
var token = url.token;
样本路线:
.state('voucher-view', {
url: '/voucher-view',
templateUrl: "templates/voucher-view.html",
controller: 'VoucherViewController'
})
答案 0 :(得分:2)
我相信您正在使用Angular UI路由器。因此,要在路线中设置/获取查询参数,您可以像这样更改州的配置:
.state('voucher-view', {
url: '/voucher-view?token',
templateUrl: "templates/voucher-view.html",
controller: 'VoucherViewController'
})
请注意,我在州的URL中添加了参数。现在,当您需要传递参数的值时,您只需在$state.go
调用中传递它:
$state.go('voucher-view', { token: 'your_token_here' });
要检索它,您可以使用$transition$
服务来获取值。将其注入控制器,并按如下方式使用:
$transition$.params().token
如果您使用的是UI路由器的0.x版本,$transition$
将无法使用。您需要使用$stateParams
:
$stateParams.token