2

我对 Ember 很陌生。我有一个服务,它返回一个简单的数组,比如

[
  "abc",
  "bcd",
  "cde",
  "def",
  "efg"
]

我的模型有点像这样

import Model from 'ember-data/model';
import attr from 'ember-data/attr';

export default Model.extend({
  value: attr()
});

在序列化程序中(我正在尝试使用 RESTSerializer),我希望将此数据发送回进行服务调用的 route.js。服务调用是对我不允许以任何方式更改的 API。

我尝试了很多可能很愚蠢的方法并用谷歌搜索了很多。可悲的是,我找不到解决方案,尽管我相信这可能不会太难。

我在上面粘贴的序列化程序中获得了有效负载,并且能够记录响应。从那里返回什么以及序列化器适合什么是我当前的问题。请询问我是否需要任何进一步的细节来解决这个问题。我没有发布太多内容,以便保持简单易懂。任何帮助表示赞赏。

4

1 回答 1

1

您可能不想使用 Ember 数据。但是,您可以通过normalizeResponse在您的Serializer.

例如,如果您的模型名称是“帐户”:

export default DS.RESTSerializer.extend({
    normalizeResponse(store, primaryModelClass, payload, id, requestType) {
        let newPayload= {
            accounts: [{
                value: payload
            }]
        };
        return this._super(store, primaryModelClass, newPayload, id, requestType);
    }
});
于 2016-05-20T19:21:28.587 回答