Mein Backend antwortet immer mit allen verfügbaren Daten und es dauerte eine beträchtliche Zeit. Also werde ich regelmäßig Speicher neu laden und ich habe vor, peekAll() und peekRecord() zu verwenden.peekRecord() funktioniert nicht, aber peekAll() funktioniert
Mein Code ist:
model: function() {
return Ember.RSVP.hash({
'clusters': this.store.peekAll('cluster'),
'single': this.store.peekRecord('cluster', 'cluster::My')
});
Wenn Code ausgeführt wird, zunächst kann ich sehen, dass diese beiden Elemente enthalten keinen Inhalt. Nach ein paar Sekunden werden die Daten in den Speicher geladen und ich kann die Inhalte "Cluster" in der Vorlage wie erwartet sehen. Aber "single" ist immer noch komplett ohne Inhalt ({{model.single}} gibt nichts in der Vorlage zurück). Aber wenn ich eine Schaltfläche mit Aktion habe:
Ich kann sehen, dass der Datensatz gefunden wurde. Aufzeichnungen sind auch über Ember Inspector verfügbar. Was mache ich falsch das nur peekAll() im Model für mich arbeitet.
Wann laden Sie den Datensatz 'cluster :: My' in den Laden? Wenn es asynchron oder nach Ihrem 'peekRecord' passiert, wird es nicht zurückkehren, während' peekAll' eine aktive Sammlung ist, die aktualisiert wird, wenn der Speicher gefüllt wird. – Kingpin2k
Es geschieht asynchron. Ich dachte, dass diese Methoden denselben Mechanismus verwenden, um Informationen mit etwas Filtern auf peekRecord-Seite zu erhalten. Deine Erklärung macht Sinn, also danke dafür. Was ist der richtige Weg, um Informationen im gleichen Modell zu erhalten? –