[英]Angular ui-sref params in link
in my router in Angular i have a url, but i dont know how add params to this link. 在我的Angular路由器中,我有一个网址,但我不知道如何向此链接添加参数。
router.js 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 View.html
<td>
<a href="" ui-sref="support.root.gateways.invitationDetails({ invitationToken: ctrl.invitationToken})">
{{ "INVITATIONS_DETAILS" | translate}}
</a>
</td>
and InvitationDetailsController.js 和InvitationDetailsController.js
angular.module("support.gateways")
.controller("InvitationDetailsController", function(Gateways, $stateParams) {
var vm = this;
vm.invitationToken = $stateParams.invitationToken;
alert($stateParams.invitationToken);
});
您可以通过将router.js中的 url 更改为:
url: "/invitations/details/:invitationToken"
.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 your stateProvider's state, I changed the controller line and added controllerAs , also added the params line. 在stateProvider的状态下,我更改了控制器行并添加了controllerAs ,还添加了params行。
Then for your link, do as you had: 然后对于您的链接,按原样进行:
<a href="" ui-sref="support.root.gateways.invitationDetails({ invitationToken: ctrl.invitationToken})">
{{ "INVITATIONS_DETAILS" | translate}}
</a>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.