2016-06-07 6 views
0

in meinem Router in Angular Ich habe eine URL, aber ich weiß nicht, wie Parameter zu diesem Link hinzufügen.Angular Ui-Sref Parameter in Verbindung

router.js

.state("support.root.gateways.invitationDetails", { 
     url: "/invitations/details?invitationToken", 
     templateUrl: "gateways/views/IvnitationDetails.html", 
     controller: "InvitationDetailsController as ctrl", 
     data: { 
      title: "TITLE_GATEWAYS", 
      requireLogin: true, 
      roles: [ 
       ROLES.ROOT, 
       ROLES.ADMIN, 
       ROLES.SUPPORT3, 
       ROLES.SUPPORT2, 
       ROLES.SUPPORT1, 
       ROLES.ENDUSER, 
       ROLES.MAINTAINER 
      ] 
     } 
    }) 

View.html

<td> 
    <a href="" ui-sref="support.root.gateways.invitationDetails({ invitationToken: ctrl.invitationToken})"> 
     {{ "INVITATIONS_DETAILS" | translate}} 
    </a> 
</td> 

und InvitationDetailsController.js

angular.module("support.gateways") 
    .controller("InvitationDetailsController", function(Gateways, $stateParams) { 
    var vm = this; 
    vm.invitationToken = $stateParams.invitationToken; 
    alert($stateParams.invitationToken); 
}); 

Antwort

2

Sie können dies in router.js durch Ändern url tun zu:

url: "/invitations/details/:invitationToken" 
0
.state('support.root.gateways.invitationDetails', { 
    url: '/invitations/details?invitationToken', 
    templateUrl: "'gateways/views/InvitationDetails.html', 
    controller: 'InvitationDetailsController', 
    controllerAs: 'ctrl', 
    params: { 
     invitationToken: null 
    }, 
    data: { 
     title: 'TITLE_GATEWAYS', 
     requireLogin: true, 
     roles: [ 
      ROLES.ROOT, 
      ROLES.ADMIN, 
      ROLES.SUPPORT3, 
      ROLES.SUPPORT2, 
      ROLES.SUPPORT1, 
      ROLES.ENDUSER, 
      ROLES.MAINTAINER 
     ] 
    } 
}) 

In Ihrem stateProvider des Staates, Ich habe die Controller Linie und hinzugefügt controllerAs, auch die params hinzugefügt Linie.

dann für Ihren Link, tun, wie Sie hatte:

<a href="" ui-sref="support.root.gateways.invitationDetails({ invitationToken: ctrl.invitationToken})"> 
    {{ "INVITATIONS_DETAILS" | translate}} 
</a>