2016-03-29 1 views
1

J'essaye de construire le fournisseur d'état qui attrapent multi params mais le problème est que je ne sais pas combien de paramètres est-il possible de les attraper comme objet ou tableau? ou la seule solution est de l'attraper comme une ficelle et de les séparer?angularsjs fournisseur d'état multi params

par exemple ceci est mon fournisseur

.state('app.confirmPayment', { 
     url: '/comfirmPayment/:params', 
     templateUrl: '/Views/ConfirmPayment.html' 
    }) 

et contrôleur

app.controller('ConfirmController', ['$scope', '$state', 
    function ($scope, $state) { 
     var self = this; 

     console.log('$state confirm payment'); 
     console.log($state); 
     console.log('$state confirm payment'); 

    } 
]); 

et veulent attraper tous les params séparés

/comfirmPayment/:age=15&name=erez..... // can be more that i dont know 

et peut être plus params que je ne sais pas ce qu'ils peuvent être

grâce espèrent son clair

Répondre

0

À moins que vous lier aux paramètres de la requête (voir le documentation), vous ne les pas directement accès par $state ou $stateParams.

Supposons l'url

cities?cityId=3&param1=value1 

et vous pouvez gérer dans votre configuration de routeur $stateProvider où vous définissez les états

.state('cities', { 
      url: "/cities?cityId&param1", 
      templateUrl: "cities.html", 
      controller: "citiesController" 
     }) 
// will match to url of "/cities?cityId=[any id]&param1=[any value]" 

et enfin vous pouvez avoir ces paramètres dans les citiesController.js-à-dire

console.log($stateParams); 
//Object {cityId: "3", param1: "value1"} 

J'espère que ça aide.

+0

qu'en est-il des params que je ne sais pas qu'est-ce qu'ils vous ont mal compris la question – Erez

+0

@Erez J'ai édité ma réponse s'il vous plaît jeter un oeil et poser des questions à ce sujet. –

+0

'objNeedsToBePassed' est l'obj de param qui a tous les params dans votre contrôleur qui doivent être passés à un autre contrôleur. –