【发布时间】:2012-12-31 13:59:38
【问题描述】:
在 Backbone.js 中,我正在使用一个 API,它将响应包装在 meta 和 data 哈希中。例如:
# GET /api/posts/1
meta: {
status: 200
},
data: {
id: 1
title: 'Hello World'
}
# GET /api/posts
meta: {
status: 200
},
data: [
{
id: 1
title: 'Hello World'
},
{
id: 2
title: 'Hi everyone!'
}
]
我的 Backbone.js 集合/模型覆盖了以下解析函数:
# App.Models.Post
...
parse: function (response) {
this.meta = response.meta;
return response.data;
}
# App.Collections.Posts
...
parse: function (response) {
this.meta = response.meta;
return response.data;
}
但是,当我在集合posts = new App.Collections.Posts(); posts.fetch() 上获取时,帖子属性都是空的。 IE。 posts.at(0).get('title') = undefined.
现在,当模型解析更改为:
parse: function (response) {
return response;
}
但这意味着post.fetch() 已损坏。
有什么建议吗?
谢谢!
【问题讨论】:
-
您是否尝试过执行 console.log(response) 来查看响应对象包含的内容?
标签: backbone.js