मैं एक संपूर्ण संग्रह लोड करना चाहता हूं और फिर एक बार में मॉडल के रूप में उपयोग करने के लिए रिकॉर्ड्स को छीलने के लिए, प्रत्येक बार सर्वर पर राउंडट्रिप किए बिना ।Model.find()। तब() रिकॉर्ड से पहले आग लगती है
मुझे पता चला है कि एम्बर का उपयोग कैसे करें। एक वादा वापस करने के लिए निर्धारित, लेकिन मुझे सही समय पर हल करने का वादा नहीं मिल सकता है। निम्नलिखित कोड सिर्फ आउटपुट "मिला 0" कभी समय: अगर मैं तो() के शरीर में लपेट एक setTimeout में है, और यह कुछ सेकंड इंतजार कर
App.PersonRoute = Ember.Route.extend({
model: function(params) {
var name = "Erik";
var promise = Ember.Deferred.create();
App.people = App.Person.find();
App.people.then(function() {
console.log('Found ' + App.people.get('length'));
var person = App.people.findProperty('name', name)
promise.resolve(person);
});
return promise;
}
});
, सब कुछ अच्छा काम करता है।
क्या कोई और घटना है जिसे मैं किसी भी तरह से बांध सकता हूं? मैंने App.people.on ('isLoaded') की कोशिश की, लेकिन isLoaded हमेशा सच है।
धन्यवाद!