我想将数据从api发送到我的视图......所以我需要从get reqest获取数据,然后将该数据发送到我页面上的视图。
这是我的控制器:
angular.module('commentsApp',['notifications'])
.config(function($routeProvider,$locationProvider) {
$routeProvider.
when('/project/:id', {
controller: 'CommentsCtrl',
template: '<%comments%>'
}).
otherwise({
template: 'aaaaaaa',
redirectTo: '/'
});
})
.controller('CommentsCtrl',function($scope,$http,$routeParams){
$scope.comments = [];
$scope.param = $routeParams.id;
$http.get("/api/comments/"+ $scope.param)
.success(function(data){
$scope.comments = data;
})
.error(function(data){
console.log(data);
});
});
这是我的HTML:
<div id="comment" ng-app="commentsApp" class="panel-body">
<div ng-view>
<h1><% ng %></h1>
</div>
</div>
答案 0 :(得分:0)
您应该在ng-app
标记中声明<html>
。我不确定<% ng %>
是什么,也不知道模板中的<% comments %>
,但这不是角度将数据渲染到视图的方式。由于comments是一个数组,因此您需要使用ng-repeat
来显示数据。
类似(在你的模板中)
<ul>
<li ng-repeat="comment in comments">
{{comment}}
</li>
</ul>
{{comment}}
是角度渲染变量的方式,类似于erb&#39; s <%= comment %>
。 Comment是<li>
生成的每个ng-repeat
的局部变量,它从$ scope变量comments
获取数据。
编辑:分配$scope.$apply();
后,您可能需要{Comment = {1}}中的$scope.comments = data
。在这一点上不确定,我还没有完全消化周期。