在AngularJS的路由中传递多个参数,可以使用路由配置中的resolve
属性来定义参数,并在控制器中通过依赖注入的方式获取这些参数。以下是一个示例:
HTML代码:
Go to User John
路由配置:
app.config(function($routeProvider) {
$routeProvider
.when('/page/:pageId/user/:userName', {
templateUrl: 'user.html',
controller: 'UserController',
resolve: {
pageId: function($route) {
return $route.current.params.pageId;
},
userName: function($route) {
return $route.current.params.userName;
}
}
});
});
控制器:
app.controller('UserController', function($scope, pageId, userName) {
$scope.pageId = pageId;
$scope.userName = userName;
});
在上面的示例中,我们在路由配置中定义了两个参数pageId
和userName
。在控制器中,我们通过依赖注入的方式获取这两个参数,并将它们绑定到$scope对象上,以便在HTML模板中使用。
注意:在路由配置中使用resolve
属性时,参数的名称必须与控制器中的依赖名称一致。