簡體   English   中英

使用Fixture Adapter和Ember Data 2.0在模型上使用Store.findAll

[英]Store.findAll on Model using Fixture Adapter with Ember Data 2.0

當前,我們正在升級項目以與Ember 2.0和Ember Data 2.0一起使用。

我有基於夾具適配器的模型。 但是,當我在模型上執行store.findAll(modelName)時,出現以下錯誤“ TypeError:serializer.normalizeResponse不是ember $ data $ lib $ system $ store $ serializer $ response $$ normalizeResponseHelper的函數”

模型

import DS from 'ember-data';
import FixtureData from '<from somewhere>';
var Model = DS.Model.extend({
    code: DS.attr('string'),
    description: DS.attr('string')
});
Model.reopenClass({
    FIXTURES: FixtureData
});
export default Model;

適配器

import DS from 'ember-data';
export default DS.FixtureAdapter.extend({
    queryFixtures: function (records, query) {
        return records.filter(function (record) {
            for (var key in query) {
                if (query.hasOwnProperty(key)) {
                    if (record[key] !== query[key]) {
                        return false;
                    }
                }
            }
            return true;
        });
    }
});

錯誤堆棧

類型錯誤:serializer.normalizeResponse不在余燼$數據$ $ LIB系統$ $商店串行$響應函數$$ normalizeResponseHelper( HTTP://本地主機:4201 /資產/ vendor.js:66323:43 )在HTTP://位於Object.Backburner.run的localhost:4201 / assets / vendor.js:66627:25http:// localhost:4201 / assets / vendor.js:9692:25 )處於ember $ data $ lib $ system $ store $$ Service.extend._adapterRun( http:// localhost:4201 / assets / vendor.js:71877:33 )位於http:// localhost:4201 / assets / vendor.js:66626:15於tryCatch( http:// localhost :4201 /資產/ vendor.js:59683:14 )在invokeCallback( HTTP://本地主機:4201 /資產/ vendor.js:59698:15 )在發布( HTTP://本地主機:4201 /資產/ vendor.js :59666:9 ),位於Queue.invokeWithOnError( http:// localhost:4201 / assets / vendor.js:10395:18 )的http:// localhost:4201 / assets / vendor.js:39006:7

FixtureAdapter在2015年6月5日發布的Ember Data 1.0b19中已棄用。在一些地方都提到了這一點,並且教程尚未趕上:

資料來源:

作為FixtureAdapter的替代,您可以使用Ember MirageFixtureAdapter可以扮演相同的角色,又可以提供其他一些功能。

同樣,在ember-data-fixture-adapter github頁面上,他們建議立即使用PretenderJS。 https://github.com/pretenderjs/pretender

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM