Javascript AngularJS在$http.get()中传递参数以获取json文件的子集
我目前正在用json文件存根我的$http.get()调用。我想将json文件的一个子集返回给angular controller。我看过其他帖子,他们建议在Get调用中设置params属性,但这对我不起作用 这是我的控制器:Javascript AngularJS在$http.get()中传递参数以获取json文件的子集,javascript,angularjs,http,Javascript,Angularjs,Http,我目前正在用json文件存根我的$http.get()调用。我想将json文件的一个子集返回给angular controller。我看过其他帖子,他们建议在Get调用中设置params属性,但这对我不起作用 这是我的控制器: angular.module('agileApp') .controller('projectController', ['$scope', '$filter', '$http','$routeParams', function($scope, $filter, $ht
angular.module('agileApp')
.controller('projectController', ['$scope', '$filter', '$http','$routeParams', function($scope, $filter, $http, $routeParams){
$http.get('json/testData.json').success(function(data){
//console.log(data);
$scope.projectData = $filter('filter')(data.projectDetail, {Id:1})[0];
console.log($scope.projectData);
});
}]);
这是我的json文件:
{ 'projectDetail': [{
'Id': 1,
'projectName': 'Project1',
'projectStatus': 'In Progress',
'teamMembers': ['User1,'User2', 'User3'],
'userStories': [
{'userStoryId': 0,
'Description': 'As a user blah blah blah 1',
'storyPoints': 10
},
{'userStoryId': 1,
'Description': 'As a user blah blah blah 2',
'storyPoints': 10
},
{'userStoryId': 2,
'Description': 'As a user blah blah blah 3',
'storyPoints': 10
},
{'userStoryId': 3,
'Description': 'As a user blah blah blah 4',
'storyPoints': 10
},
{'userStoryId': 4,
'Description': 'As a user blah blah blah 5',
'storyPoints': 10
},
{'userStoryId': 5,
'Description': 'As a user blah blah blah 6',
'storyPoints': 10
},
]
},
project detail数组中还有其他对象,但我只想返回Id=routeID的对象,该对象作为参数传递到控制器中
任何帮助都将不胜感激
谢谢 您的json无效,因此$http.get会给您一个字符串而不是对象
有一些语法错误,角度过大需要正确的引用(与js不同)
这是我的简化json。我想你可以很容易地想出如何收养你的孩子。(这是“国际广告公司”)
根据我的理解,params只是一个发送给Web服务的参数,因此,如果您不处理它来做一些事情,或者如果您只有一个json,您将得到该json。我将在这里使用两种方法之一,首先是控制器中的一个方法,或者最好是一个将解析json以返回所需内容的服务。或者使用$httpProvider来处理在它返回之前,它将返回感谢您的响应。但是,我仍然无法解析数据。我已使用筛选代码更新了我的问题,但它返回未定义。成功函数的数据是否为null?您是否检查过是否调用了success?您能提供一个fiddle吗?我想是因为它的无效角度无法为您提供对象。instead数据是一个字符串。所以它不是空的。但是您不能像data.projectDetail那样访问它,因为它只是一个字符串。
{
"projectDetail": [
{
"Id": 1,
"projectName": "Test1"
}
]
}