我是Ember的新手,根据我的理解,它有一种非常具体的方式,除了它的json api响应外。像这样:
{
"post": {
"id": 1,
"title": "Node is not omakase",
"comments": [1, 2, 3]
},
"comments": [{
"id": 1,
"body": "But is it _lightweight_ omakase?"
},
{
"id": 2,
"body": "I for one welcome our new omakase overlords"
},
{
"id": 3,
"body": "Put me on the fast track to a delicious dinner"
}]
}
现在我已经构建的api有一个类似的json响应:
{
"data": {
"id": 1,
"name": "Pansy Bednar",
"links": [
{
"rel": "self",
"uri": "/pansy-bednar15"
}
],
"players": {
"data": [
{
"id": 2,
"name": "Nicholas O'Reilly",
"position": "cad",
"age": 23,
"value": "640",
"links": [
{
"rel": "self",
"uri": "/team/nicholas-o-reilly71"
}
]
}
]
}
}
}
api相当大,并且与移动应用程序一起正常运行。所以重新编写代码将是昂贵的,我会选择另一个js框架,即使我最喜欢Ember。
所以我的问题是我有什么办法可以在ember中调整预期的json响应。如果是的话有多难?值得的时候或者我应该去Angular或Aurelia。
还是我完全错了,没有人对ember有任何预期的回应?
答案 0 :(得分:1)
你可以用ember做的就是为此编写你自己的适配器,那里已经有很多问题+答案了:
此处还有一个博客条目:http://eviltrout.com/2013/03/23/ember-without-data.html它是关于使用没有余烬数据的ember。
找到这个名为normalizePayload
的小宝石 - 也许这也适用于您的情况:https://stackoverflow.com/a/21790093/1581725