2017-02-13 7 views
0

Ich habe ein Objekt, das feedhasManyfeedTracks, die jeweils feedTrack eine track mit ihm verbunden hat.Berechnete Eigentum von undefined hat viele Zurückkehren - Ember

Diese Beziehungen funktionieren erfolgreich, aber wenn ich versuche, eine berechnete Eigenschaft zu verwenden, bricht etwas.

auf dem Modell-Feed i haben:

secondFeedTrack: computed('feedTracks.[]', function() { 
    return this.get('feedTracks').then((feedTracks) => { 
    return feedTracks.objectAt(1); 
    }); 
}) 

wenn ich {{log feed.secondFeedTrack}} erhalte ich:

Object { _id: 136, _label: undefined, _state: undefined, _result: undefined, _subscribers: Array[0] } 

die nicht nichts ist, aber es sieht nicht richtig aus.

Wenn ich {{log feed.secondFeedTrack.track}} mache, bekomme ich undefined.

Was mache ich falsch, um eine feedTrack aus der berechneten Eigenschaft nicht richtig zu bekommen?

Antwort

1

Das Problem ist, dass Ember Data PromiseObject und PromiseArrays für Speichermethoden zurückgibt, aber da Sie das Versprechen (async hasMany) sind, wird es zu einem regelmäßigen Versprechen.

Wenn Sie es zu vereinfachen:

secondFeedTrack: computed('feedTracks.[]', function() { 
    return this.get('feedTracks').objectAt(1); 
    }); 
}) 

sollte es funktionieren, wie es aktualisieren sollte die Beziehung aufgelöst wird.

Verwandte Themen