jQuery Promise を回避するための推奨にもかかわらず、開発者は、jQuery 関数を使用せずに非同期 jQuery 関数を連鎖させると課題に直面する可能性があります。 .then() や .when() などの jQuery の Promise 処理メカニズム。これに対処するには、次のアプローチを検討してください。
jQuery Promise は JavaScript Promise と相互運用可能です。これは、コード内でそれらを問題なく組み合わせて使用できることを意味します。すべての信頼できるライブラリとネイティブ Promise は、あらゆる実装からの thenable を受け入れます。その結果、ほとんどの場合、すべての Promise が同じ実装を使用しているかのようにコーディングできます。
ただし、すべての .then() 呼び出しで優先実装を使用するか、非実装を確実に使用する必要がある場合は、標準機能では、メソッドを直接呼び出すすべての Promise を明示的にキャストすることが重要です。例:
Promise.all([$.ajax(...), $.ajax(...)]) // Just works (native `then`)
$.ajax(...) // jQuery promise Promise.resolve($.ajax(...)) // Explicit cast .then(function(data) { // Native `then` return $.ajax(...); // Just works }) .catch(...) // Use features of native promise
jQuery と JavaScript の Promise を混在させることは通常は問題ありませんが、実装を明示的に制御する必要がある場合は、明示的なキャスト アプローチを使用してください。
以上が非同期操作を維持しながら連鎖関数での jQuery Promise を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。