Я много читал о новом объекте jQuery.Deferred. Одна вещь, которая была бы действительно полезной, — это возможность преобразовать существующий объект в отложенный, тогда вы получите 100% гибкость в отношении того, откуда вы получаете свои данные.
Я думаю что-то вроде
$.makeDeferred({property: "data"}) // returns an object with .promise() method, in resolved state, and that passes the original object as data/context to any callback function
Кто-нибудь знает, существует ли этот метод или как его создать?
$.when
сделает это сам, потому что он проверяет, является ли каждый аргумент обещанием или нет, но вы не можете вызватьfoo.done()
, еслиfoo
не является обещанием. - person Alnitak   schedule 13.04.2011$.when(foo)
действительно возвращает уже разрешенное обещание, когдаfoo
является простым объектом. - person Alnitak   schedule 13.04.2011