Üretime hazır olmadığı ve hala değişmediği için ember verilerini kullanmaya karar verdim. Uygulamamın yalnızca bir kaç ajax isteğinde bulunabilmesi gerekiyor. Bu yüzden bir farkın çok büyük olmaması gerekiyor. Bir ajax söz cevabını nasıl ele alacağımı anlamakta zorlanıyorum.Ember Verisi Olmadan AJAX Sözü
Kullanıcım uygulamayı yüklediğinde zaten kimliği doğrulanmış bir oturuma sahipler. Bu kullanıcı bilgisi için sunucuyu ping etmeye ve şablonumda göstermeye çalışıyorum. Benim ajax isteğim sonuçları döndürmeden önce şablonum işlenmiş gibi görünüyor ve daha sonra sözüyle güncellenmiyor. Benim şablonunda
// route
App.ApplicationRoute = Ember.Route.extend({
setupController: function(){
this.set("currentUser", App.User.getCurrentUser());
}
});
// model
App.User = Ember.Object.extend({
email_address: '',
name_first: '',
name_last: '',
name_full: function() {
return this.get('name_first') + ' ' + this.get('name_last');
}.property('name_first', 'name_last')
});
App.User.reopenClass({
getCurrentUser: function() {
return $.ajax({
url: "/api/get_current_user",
type: "POST",
data: JSON.stringify({})
}).then(function(response) {
return response;
});
}
});
:
<h1> Hey, {{App.currentUser.name_first}}</h1>
nasıl bir yanıt alana kadar bir yanıt veya gecikme oluşturma aldığınızda ben şablonu güncellemek ki?
# 3 tamamlandığında öğrenebileceğim bir yol var mı? Örneğin # 3 tamamlandığında bir denetleyici yöntemini çağırmak. .observes() yardımcı görünmüyor. – Rushi
Bir söz/jQuery.Deferred kullanabilirsiniz. – mavilein
@mavilein, bir dizi için jQuery sözü kullanma örneğiniz var mı? Bir nesne için jQuery sözü kullanabileceğimi buldum, ancak bir dizi için bir söz kullanmaya çalıştığımda bir tür hata alıyorum. –