如何在angular中设置路径参数并在控制器中访问?
How to set up path paramater in angular and access in the controller?
我正在尝试设置如下路线:
$stateProvider.state('transactions', {
url: '/transactions',
templateUrl: url,
menu: 'Transactions'
});
$stateProvider.state('audit', {
url: '/transactions/:id/audit',
templateUrl: 'url',
});
我希望用户使用以下内容导航到审核页面 url:
/transactions/100/audit
/transactions/200/audit
我有一个按钮,它有一些逻辑可以将用户重定向到“审核”页面,但我对如何设置 $state 来实现这一点感到困惑?
$scope.redirectToAudit = function () {
$state.go('audit', {
id: $scope.transactionId
});
}
因此,当单击此按钮时,我想将用户重定向到此路由“/transactions/100/audit
”,并在审核日志页面的控制器中获取 transactionId 100
。
var app = angular.module('myApp', []);
app.controller('auditCtrl', function($scope) {
$scope.transactionId = //retrive transactionId from the path parameter
});
我想在审计中强制使用交易 ID URL /transactions/100/audit
因为整个审计页面将只处理交易 ID。
如何设置我的 $stateProvider 以支持我上面描述的 URL 和功能?
如果这对你有用,请告诉我。
$stateProvider.state('transactions', {
url: '/transactions',
templateUrl: url,
menu: 'Transactions'
});
$stateProvider.state('audit', {
url: '/transactions/{id}/audit',
templateUrl: 'url',
});
----------------------
var app = angular.module('myApp', []);
app.controller('auditCtrl', function($scope, $stateParams) {
$scope.transactionId = $stateParams.id;
});
----------------------
app.controller('transactionsCtrl', function($scope, $state) {
$scope.redirectToAudit = function () {
$state.go('audit', {
id: $scope.transactionId;
});
}
});
我正在尝试设置如下路线:
$stateProvider.state('transactions', {
url: '/transactions',
templateUrl: url,
menu: 'Transactions'
});
$stateProvider.state('audit', {
url: '/transactions/:id/audit',
templateUrl: 'url',
});
我希望用户使用以下内容导航到审核页面 url:
/transactions/100/audit
/transactions/200/audit
我有一个按钮,它有一些逻辑可以将用户重定向到“审核”页面,但我对如何设置 $state 来实现这一点感到困惑?
$scope.redirectToAudit = function () {
$state.go('audit', {
id: $scope.transactionId
});
}
因此,当单击此按钮时,我想将用户重定向到此路由“/transactions/100/audit
”,并在审核日志页面的控制器中获取 transactionId 100
。
var app = angular.module('myApp', []);
app.controller('auditCtrl', function($scope) {
$scope.transactionId = //retrive transactionId from the path parameter
});
我想在审计中强制使用交易 ID URL /transactions/100/audit
因为整个审计页面将只处理交易 ID。
如何设置我的 $stateProvider 以支持我上面描述的 URL 和功能?
如果这对你有用,请告诉我。
$stateProvider.state('transactions', {
url: '/transactions',
templateUrl: url,
menu: 'Transactions'
});
$stateProvider.state('audit', {
url: '/transactions/{id}/audit',
templateUrl: 'url',
});
----------------------
var app = angular.module('myApp', []);
app.controller('auditCtrl', function($scope, $stateParams) {
$scope.transactionId = $stateParams.id;
});
----------------------
app.controller('transactionsCtrl', function($scope, $state) {
$scope.redirectToAudit = function () {
$state.go('audit', {
id: $scope.transactionId;
});
}
});