在获取结果后,我正在调用一个休息网络服务backboneCollection.fetch
,我得到的响应如下:
[{"projects":[{"id":1537512,"name":test},{"id":1537513,"name":test1}]}]
//response =JSON.stringify(projects);
我怎样才能迭代这个?
在获取结果后,我正在调用一个休息网络服务backboneCollection.fetch
,我得到的响应如下:
[{"projects":[{"id":1537512,"name":test},{"id":1537513,"name":test1}]}]
//response =JSON.stringify(projects);
我怎样才能迭代这个?
你应该覆盖你的集合的parse
方法:
... rest of collection...
,parse: function(response) {
return response[0].projects;
}
这样,您的集合将由返回的项目数组组成,而没有额外的包装对象。
我相信您未定义 response.projects 的原因是,如果您的响应对象是
[{"projects":[{"id":1537512,"name":test},{"id":1537513,"name":test1}]}]
正如您所说,那么您的整个响应都包含在一个数组中。
如果你要带response[0]
你会有
{"projects":[{"id":1537512,"name":test},{"id":1537513,"name":test1}]}
你应该能够接受 response.projects 这个。
从那里遵循@Andbdrew 关于 Backbone 解析函数的声明。