在子状态的角度ui路线stateparam

时间:2017-02-15 16:05:27

标签: angularjs angular-ui-router

我在子状态中使用stateparam时遇到一些问题。

这是我的“主人”状态

.state("shop", {
    abstract: true,
    url: '/shop/:nameSlug',
    templateUrl: '/views/shop/index.html',
    controller: 'shopController',
    params: {
        nameSlug: null,
        }
    })

这是我的基础:

.state('shop.payment-success', {
    url: '/payment-success?transactionid',
    templateUrl: '/views/payment-success.html',
    controller: 'checkoutController'
})

我想在我的控制器中使用参数'transactionid',但是当我记录它时,它是未定义的。

我尝试使用$ stateParams和$ state.params,但它们之间没有区别。

有没有办法让'checkoutController'中的transactionid可用?

您的信息:param?transactionId来自支付网关,我无法更改它。它包含orderId,我需要检查真正的付款。

1 个答案:

答案 0 :(得分:0)

试试这个:ui-router documentation

.state('shop.payment-success', {
    url: '/payment-success',
    params: {
          transactionid: null
    }  
    templateUrl: '/views/payment-success.html',
    controller: 'checkoutController'
})