jQuery Promise を回避するための推奨にもかかわらず、開発者は、jQuery の関数を使用せずに非同期 jQuery 関数を連鎖するときに課題に直面する可能性があります。 .then() や .when() などの 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 を混合しても通常は問題ありませんが、実装を明示的に制御する必要がある場合は、明示的なキャスト アプローチを使用してください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3