如何在urjs中将url的get请求参数添加到控制器中
例如我的请求是http://localhost/abc-ang/#!/abc/8
,我的控制器代码是
app.controller('AbcCtrl', function($scope,$http) {
$http.get("src/public/add/:id").then(function(response) {
$scope.abc = response.data;
});
});
我想将src/public/add/:id
替换为src/public/add/8
我怎么能动态地做到这一点?
我的路由配置是
app.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/abc', {
templateUrl: "tpl/welcome.html"
})
.when('/abc/:wineId', {
templateUrl: 'tpl/abc-details.html',
controller: 'AbcDetailCtrl'
})
.otherwise({ redirectTo: '/abc' });
}]);
答案 0 :(得分:3)
您可以使用$routeParams
根据您的评论,您的路线是:
$routeProvider.when('/abc/:wineId', {
templateUrl: 'tpl/abc-details.html',
controller: 'AbcDetailCtrl'
});
因此,在您的控制器中,您可以获得wineId
值:
app.controller('AbcCtrl', function($scope, $http, $routeParams) {
$http.get("src/public/add/" + $routeParams.wineId).then(function (response) {
$scope.abc = response.data;
});
});