AngularJS多个url参数(ui-router)

时间:2015-10-20 06:54:20

标签: javascript angularjs laravel laravel-5 angular-ui-router

我从支付网关返回以下格式网址:

#/app/booking/details?id=25&success=true&paymentId=123&token=xx2311&PayerID=QSWAA

目前我的路线配置如下:

.state('app.booking.details', {
                url: '/details/:id/:paymentId',
                views: {
                    'mainView@app': {
                        templateUrl: 'views/details_booking.html'

                    }
                },
                css: ['assets/css/styles.css','assets/css/plugins.css'],
                resolve: loadSequence('bookingCtrl')


            })

不幸的是我无法将网址分开并将其传递给服务器。我该如何解决这些问题。到目前为止只有id能够通过。这些是我的Laravel 5.1方法:

public function getBookingDetailAPI(Request $request)
    {

        $oid = $request->input('paymentId'); --> null
        $oid = $request->input('id'); --> 25
        dd($oid);
  }

1 个答案:

答案 0 :(得分:1)

当您从url查找查询参数时,您的状态URL状态选项应更改为以下。

url: '/details?id&paymentId&token&PayerID'

通过此更改,您可以通过URL服务获取$stateParams参数,将其注入$stateParams.id$stateParams.paymentId等控制器。

完成后,您可以将您的请求转发到控制器中的laravel服务器或解决方法,如下所示:

$http.get('/backend/route',{params:$stateParams}).then(function(data){
  console.log(data); // laravel response
});