2013-03-20 22 views
7

jQuery öğesinde when işlevini ve ertelenmiş nesneleri anlamaya çalışıyorum.jQuery ile ertelendi - getJSON() geri çağırma ile when()

get JSON ready! 
sucess 

... ama önce bu başarıdır geri arama yangınları ulaşmak istiyoruz:

$.when($.getJSON('/echo/json', function() { 
    console.log('sucess'); 
}, function() { 
    console.log('error'); 
})).then(console.log('get JSON ready!')); 

Bu örnek verir

sucess 
get JSON ready! 

Bunu nasıl yapabilirim?

http://jsfiddle.net/lukaszr/rBFmL/

cevap

10

Sen işlev sarmalayıcı unuttum - kodunuzu console.log çağırır derhal yerine bir geri çağırma işlevi geçirerek:

.then(console.log('get JSON ready!')); 

olmalı:

.then(function() { 
    console.log('get JSON ready!'); 
}); 

Fiddle

+3

+1 ahhh eski işlev işaretçisi sorunu. – Liam

+0

+1 iyi bir gözlem. – Adil

+1

çaylak hatası, teşekkürler! –

İlgili konular