【问题标题】:How to use adapter in an ember-engines如何在 ember 引擎中使用适配器
【发布时间】:2017-09-19 12:24:43
【问题描述】:

正如标题所说,我在理解如何在 ember 引擎中使用适配器时遇到了一些问题。
我目前正在使用ember@2.15ember-data@2.15ember-engines@0.5.14 运行我的应用程序。 我已经在我的主应用程序中使用了一个适配器,但是如果我试图在我的应用程序中重现一个基本适配器,页面将无限期加载。
在我的路由中,我使用findAll 方法调用我的适配器:

  model()
    {
        "use strict";
         console.log('In my route');
         return this.get('store').findAll('my-adapter-name', {reload: true});
    }

在我的适配器中,我尊重我在应用内适配器中使用的语法:

import DS from 'ember-data';
import Ember from 'ember';

export default DS.Adapter.extend({

    findAll: function (store, type, sinceToken, snapshotRecordArray)
    {
        console.log("In my adapter");
        return new Ember.RSVP.Promise(function (resolve, reject)
        {
        // I accede to my websocket service here, nothing to do with my question
        });
    },
    /* *
    * My other function, like findRecord, ect...
    */
});

如你所见,我在我的代码中放了一些console.log,我可以访问我的路由中的消息,它在我的引擎中,但我无法访问我的适配器中的消息,它也在我的引擎。
我试图将console.log 放在我的应用程序的适配器中,并且消息正确显示,所以我确定这是因为我无法访问引擎中的适配器,所以如果有人知道我们如何应该在我们的ember-engines 中配置我们的适配器,这将非常感激。
供您参考,这是一个 in-repo 引擎。

【问题讨论】:

    标签: ember.js ember-data ember-engines


    【解决方案1】:

    刚找到,这有点棘手,但你的models(和adapters)应该在myApp/lib/myEngine/app/models/,而不是myApp/lib/myEngine/addon/models

    我不知道这是否是有意的,但这是我发现在您的 in-repo ember-engines 中添加模型的唯一方法。


    编辑 这将为serializerstransform 解决问题。

    【讨论】:

      猜你喜欢
      • 2017-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多