Although tutorials advise against using jQuery promises, chaining asynchronous functions can be challenging without them. This article explores how to handle such situations using Promise.all and other methods without relying on jQuery's .then() or .when().
JavaScript promises support interoperability, allowing the mixing of different implementations. However, explicitly casting promises is essential when directly invoking methods on them.
Consider the following example:
Promise.all([$.ajax(…), $.ajax(…)]).then(…); // jQuery Promise is automatically casted
To ensure that all .then() method calls use a specific implementation, explicitly cast the jQuery Promise:
Promise.resolve($.ajax(…)) .then(function(data) { return $.ajax(…); }) .catch(…)
By casting the jQuery Promise to a native Promise, you can access its features while chaining multiple asynchronous functions using Promise.all.
The above is the detailed content of How to Chain Asynchronous jQuery Functions without Promises?. For more information, please follow other related articles on the PHP Chinese website!