离子v1中的querystring使用angularjs

时间:2018-05-28 08:02:12

标签: angularjs ionic-framework angular-ui-router

如何设置查询字符串?

样品:

$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'
    })

1 个答案:

答案 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