我对 Angularjs 很陌生,并且在弄清楚如何更新我从 JSON 创建的 $scope 元素时遇到了问题。基本上我有一个包含获取 JSON 的函数的服务:
app.service('JSONService', function($http){
return{
getJSON: function(){
return $http.get('posts.json')
.then(function(response){
return response.data;
});
}
};
});
然后我有一个控制器,其中包含一个函数,该函数在单击按钮时获取 JSON 数据并将其放入 $scope.data 和我想用来更新 $scope.data 的第二个函数:
app.controller('PostController', function PostController($scope, JSONService){
$scope.data;
$scope.getJSON = function(){
$scope.data = JSONService.getJSON();
};
$scope.addPost = function(){
// Add to $scope.data
};
});
目前,我成功地获取了 JSON 数据并能够使用它来填充我的视图的各个方面,但我被困在如何继续更新 $scope.data 以便:
- 它实际上更新
- 更新反映在我的视图中
我试过 $broadcast、$scope.data.push、$scope.data.posts.push。这些要么完全不起作用,要么出现错误。我敢肯定这可能是一个简单的答案,但我觉得我可能对 Angularjs 和 JSON 缺乏经验来了解它。提前致谢。