我正试图建立一个博客网站,只使用前端。我的博客数据是在一个API。我已经建立了博客提要,其中不同的博客列表显示使用AngularJS获取方法。但对于博客的详细视图,我需要从API一个单一的博客数据结果。
我已经尝试使用$routeParams
选项。但它不起作用。我的博客API有id参数,返回特定博客ID的博客数据。blogdetail.html
(模板)
<div>
<div><h1>Blog Details</h1></div>
<div ng-repeat="xr in blog">
{{xr.BLOGID}}
<div>
</div>
字符串blogController.js
(控制器)
'use strict';
app.controller('blogController', ['$scope','$http', function ($scope, $http, $routeParams) {
$http.get('http://example.com/api/blog/', {
params: {id: $routeParams.id}
})
.then(function(res){
$scope.blog = res.data;
}).catch(function(response) {
console.log("ERROR:", response);
});
}]);
型
网站的博客详细信息部分的路线提供商:
$routeProvider
.when("/Blog/:id", {
controller : "blogController" ,
templateUrl : "views/BlogDetail.html"
})
型
这是我得到的错误:
TypeError: Cannot read property 'id' of undefined
型
1条答案
按热度按时间kknvjkwl1#
你需要把数组中的所有参数都加到函数前面,这些参数是函数中需要的,否则它们就没有定义。
问题在这里
['$scope','$http', function
字符串