2011-10-03 22 views
30

Estoy investigando las características diferidas de jQuery. He intentado con varios ejemplos en internet. Entendí su concepto, pero no entiendo la diferencia entre resolve() y promise().¿Cuál es la diferencia entre .resolve() y .promise()?

¿Cuáles son las diferencias entre resolve() y promise()?

Respuesta

32

Ambos resolve() y promise() son métodos en el objeto jQuery Deferred.

En primer lugar un fragmento del jQuery documentation about Deferred:

Un modelo para la comprensión Diferida es pensar en él como un envoltorio función cadena conscientes. Los métodos deferred.then(), deferred.done(), y deferred.fail() especifican las funciones que se invocarán y los métodos deferred.resolve (args) o deferred.reject (args) "invocan" a las funciones con los argumentos que proporcionas

Con esto en mente promise(), devuelve un objeto que es muy similar al objeto Deferred excepto que sólo tiene then(), done() y fail() métodos y qué no tienenresolve() o reject().

Desde la entrada del blog de m-afilada que se refiere con respecto promise():

Esto es útil cuando se quiere dar a la API que llama algo que suscribirse, pero no la capacidad de resolver o rechazar la diferido .

Cuestiones relacionadas