2017-04-22 12 views
0

私は(すべてではないのシリアライザがこの機能を持っていることを知っているが、私は使用しています1のinitに私cartモデルをプリロードしようとしているとエラーにエンバー:インスタンス初期化子でpushPayloadエラー

TypeError: cart.pushPayload is not a function 

を取得していますRESTSerializer)が行います。 application.jsのための私のシリアライザは、次のとおりです。

import DS from 'ember-data'; 
export default DS.RESTSerializer.extend({}); 

cart.jsのインスタンス初期化子は、次のとおりです。今私は、静的なデータを使用していますのために私はこの作業を取得するとき、私はなります/場合

import Ember from 'ember'; 

export function initialize(appInstance) { 
    let CartService = appInstance.factoryFor('service:cart'); 

    let payload = { 
     "cart": [{ 
      "id": "S5339", 
      "quantity": 1, 
      "itemPrice": 129.95 
     }, { 
      "id": "BLK1642", 
      "quantity": 1, 
      "itemPrice": 55 
     }, { 
      "id": "TDS9004", 
      "quantity": 5, 
      "itemPrice": 99.95 
     }] 
    }; 
    let cart = CartService.create(); 
    cart.pushPayload(payload); 

    appInstance.register('cart:main', cart, { instantiate: false }); 
    appInstance.inject('controller', 'cart', 'cart:main'); 
    appInstance.inject('component', 'cart', 'cart:main'); 
} 

export default { 
    name: 'cart', 
    initialize 
}; 

ember-networkを使用してネットワーク要求を行っています。

しかし、なぜ私はpushPayloadを働かせることができないのか、ウサギの穴を下っています。どんな助けにも感謝!

答えて

0

さて、私はこれを理解したと思います。 pushPayloadは組み込み関数ではありません。それは私のservices/cart.jsの機能で、レコードをストアにプッシュすることを処理する必要があります