15

最近の更新により、ルーターとコントローラーで簡単にできることがわかりましたthis.store.find('model')findただし、ルーターやコントローラーにはない、呼び出す必要のある関数がいくつかあります。storeでは、Ember アプリのどこからでも インスタンスを取得するにはどうすればよいでしょうか?

最悪の事態は最悪の事態になることはわかっていApp.__container__.lookup('store:main')ますが、それを避けようとします。

4

4 に答える 4

10

TRANSITION doc には、ストアをコンポーネントに注入するためにこれを行うことができると書かれています:

App.inject('component', 'store', 'store:main');

'component''view'またはに変更できるかもしれませんが'model'、それについてはわかりません。

于 2013-09-12T02:26:25.930 に答える
7

あなたはやろうとすることができます

this.get('controller').get('store').find('model')

たとえば、ビューで中華鍋になります。

于 2013-09-13T12:21:37.747 に答える
1

Emberデータを使用1.0.0-beta.X

App.YourModelType.store.find("yourModelType", someId).then( 
  function(modelInstance) { 
  ...
  });
于 2014-11-06T19:56:07.567 に答える