Angulaire ui-router - comment accéder aux paramètres imbriqués, vue nommée, transmis à partir du modèle parent?
Salut, je suis en train d'essayer d'accéder à un paramètre dans le contrôleur "ViewWorklogCrtl" lors de l'utilisation de l'interface utilisateur du routeur et en cours d'exécution dans la difficulté.
Fondamentalement, ma mère modèle contient:
a(ui-sref="instance-ticket.worklog({id:{{ticket.testnum}}})") show
et puis en bas de la page:
section(ui-view="top-section")
Ensuite dans mon app.js contenant côté client de routage info en bref j'ai:
$stateProvider
.state('instance-ticket', {
url: '/ticket/:instanceID',
templateUrl: 'partials/instance-ticket',
controller: 'ViewTicketCrtl'
})
.state('instance-ticket.worklog', {
views:{
'top-section':{
templateUrl:'/partials/ticket.worklog.jade',
controller: 'ViewWorklogCrtl'
}
}
})
Le modèle de chargement fonctionne correctement, le problème et la question que je ne peux pas trouver une réponse à est - comment accéder à "testnum" transmise par le biais de l'interface utilisateur-sref lien, et à l'intérieur de la ViewWorkLogCtrl... Est-il une meilleure approche?
Merci beaucoup!!!
- Il serait plus simple de la façon dont vous le suggérer, c'est de commencer à être compliqué
Vous devez vous connecter pour publier un commentaire.
La
instanceID
est déclaré comme un paramètre, donc on peut y accéder comme çaTous les autres détails pourraient être trouvés ici https://github.com/angular-ui/ui-router/wiki/URL-Routing
Et l'appel à
ui-sref
devrait ressembler à ceciÉtendre:
Dans le cas que nous aimerions obtenir deux paramètres, 1) instanceID le parent 2) testnum à partir de l'actuel, nous devons ajuster la définition de l'état comme ce
Et la
ui-sref
Et on peut y accéder comme ceci:
the ui-sref
appel. Nous devons utiliser le même nom de paramètre instanceID comme l'a déclaré dans l'url, et j'attends que leticket
est un élément de quelques ng-repeat... c'est ma façon de faire déclarer l'etat href/références. le testunm du billet seront évalués et transmis en tant que instanceID dans le$stateParams
testnum
. Ici à la fois le parent et l'enfant, les états déclare params... nous pouvons les transmettre en un seul appel... et d'y accéder via$stateParams
J'ai écrit une coutume de la directive afin de résoudre ce problème.
Vous pouvez le cloner à partir de Github:
https://github.com/JensEger/Angular-Directives/tree/master/ui-router-helper