私のアプリケーションのワークフローの一部として、私のコードの一部が具体的なObject
をhasMany
リレーションロードされていないので、それはundefined
を返しています。EmberJSがまだロードされていないときにhasManyリレーションのオブジェクトを検査する
私は、すべての約束の特質を世話していたという希望でEmber.Array.findBy methodを使用しています。
これが失敗している行です。
this.get('report.charts').findBy('questionId', questionId);
//-> undefined
現時点では私はこの行を呼び出していますreport.charts
がすべてロードされないことは明らかである:
this.get('report.charts').map(function(e){ return e.get('questionId') });
//-> ["Wiese_030", undefined, undefined, undefined, undefined]
いくつかの詳細情報:
this.get('report.charts').toString();
//-> "<DS.PromiseManyArray:ember1209>"
この状況を処理する方法は何ですか?
私の提案する解決策が私の実際のシナリオに適しているとしても、私はこの答えがよりグローバルに役立つと思います。 – fguillen