الفرق بين المراجعتين لصفحة: «jQuery/deferred/always»
Khaled-yassin (نقاش | مساهمات) طلا ملخص تعديل |
ط استبدال النص - 'JQuery' ب'jQuery' |
||
سطر 17: | سطر 17: | ||
هو دالة إضافية إختيارية أو مصفوفة من الدوال، تُستدعى عند حل الكائن المؤجل Deferred أو رفضه وهو من النوع [[JavaScript/Function|دالة]] Function(). | هو دالة إضافية إختيارية أو مصفوفة من الدوال، تُستدعى عند حل الكائن المؤجل Deferred أو رفضه وهو من النوع [[JavaScript/Function|دالة]] Function(). | ||
يمكن أن يكون هذا الوسيط إما دالة مفردة أو مجموعة من الدوال. عند حل أو رفض الكائن المؤجل Deferred تُستدعى الدالة <code>alwaysCallbacks</code>. وبما أن التابع <code>deferred.always()</code> يُعيد الكائن المؤجل Deffered، فيمكن تقييد عدة توابع أخرى من الكائن المؤجل إليه بما في ذلك توابع <code>.always()</code> إضافية. عند حل أو رفض الكائن المؤجل، تُستدعى ردود النداء بنفس الترتيب الذي سبق وأن أُضيفوا به، وذلك باستخدام الوسائط المُقدمة لنداءات التوابع <code>[[ | يمكن أن يكون هذا الوسيط إما دالة مفردة أو مجموعة من الدوال. عند حل أو رفض الكائن المؤجل Deferred تُستدعى الدالة <code>alwaysCallbacks</code>. وبما أن التابع <code>deferred.always()</code> يُعيد الكائن المؤجل Deffered، فيمكن تقييد عدة توابع أخرى من الكائن المؤجل إليه بما في ذلك توابع <code>.always()</code> إضافية. عند حل أو رفض الكائن المؤجل، تُستدعى ردود النداء بنفس الترتيب الذي سبق وأن أُضيفوا به، وذلك باستخدام الوسائط المُقدمة لنداءات التوابع <code>[[jQuery/deferred/resolve|resolve]]</code> أو <code>[[jQuery/deferred/reject|reject]]</code> أو <code>[[jQuery/deferred/resolveWith|resolveWith]]</code> أو <code>[[jQuery/deferred/rejectWith|rejectWith]]</code> استدعاءات الأسلوب. لمزيد من المعلومات، راجع وثائق [[jQuery/deferred-object|Deferred object]] . | ||
=== ملاحظة === | === ملاحظة === | ||
يتلقى التابع <code>deferred.always()</code> الوسائط التي استخدمت لحل <code>.resolve()</code> أو رفض <code>.reject()</code> الكائن المؤجل Deferred، والتي غالبًا ما تكون مختلفة جدًا. ولهذا السبب، فمن الأفضل استخدامه فقط للإجراءات التي لا تتطلب فحص الوسائط. لكن في جميع الحالات الأخرى، استخدم المُداوِلان <code>[[jQuery/deferred/done|.done()]]</code> أو <code>[[ | يتلقى التابع <code>deferred.always()</code> الوسائط التي استخدمت لحل <code>.resolve()</code> أو رفض <code>.reject()</code> الكائن المؤجل Deferred، والتي غالبًا ما تكون مختلفة جدًا. ولهذا السبب، فمن الأفضل استخدامه فقط للإجراءات التي لا تتطلب فحص الوسائط. لكن في جميع الحالات الأخرى، استخدم المُداوِلان <code>[[jQuery/deferred/done|.done()]]</code> أو <code>[[jQuery/deferred/fail|.fail()]]</code> حصريًا نظرًا لأن الوسائط سيكون لها ترتيب معروف جيدًا. | ||
=== مثال === | === مثال === |
مراجعة 13:37، 5 مايو 2018
deferred.always( alwaysCallbacks [, alwaysCallbacks ] )
القيمة المعادة
تُعيد كائنًا من النوع Deferred.
الوصف
يُضيف هذا التابع مُداوِلات تُستدعَى عند حل الكائن المؤجل Deferred أو رفضه.
deferred.always( alwaysCallbacks [, alwaysCallbacks ] )
أُضيف مع الإصدار: 1.6
alwaysCallbacks
هو دالة أو مصفوفة من الدوال، تُستدعى عند حل الكائن المؤجل Deferred أو رفضه وهو من النوع دالة Function().
alwaysCallbacks
هو دالة إضافية إختيارية أو مصفوفة من الدوال، تُستدعى عند حل الكائن المؤجل Deferred أو رفضه وهو من النوع دالة Function().
يمكن أن يكون هذا الوسيط إما دالة مفردة أو مجموعة من الدوال. عند حل أو رفض الكائن المؤجل Deferred تُستدعى الدالة alwaysCallbacks
. وبما أن التابع deferred.always()
يُعيد الكائن المؤجل Deffered، فيمكن تقييد عدة توابع أخرى من الكائن المؤجل إليه بما في ذلك توابع .always()
إضافية. عند حل أو رفض الكائن المؤجل، تُستدعى ردود النداء بنفس الترتيب الذي سبق وأن أُضيفوا به، وذلك باستخدام الوسائط المُقدمة لنداءات التوابع resolve
أو reject
أو resolveWith
أو rejectWith
استدعاءات الأسلوب. لمزيد من المعلومات، راجع وثائق Deferred object .
ملاحظة
يتلقى التابع deferred.always()
الوسائط التي استخدمت لحل .resolve()
أو رفض .reject()
الكائن المؤجل Deferred، والتي غالبًا ما تكون مختلفة جدًا. ولهذا السبب، فمن الأفضل استخدامه فقط للإجراءات التي لا تتطلب فحص الوسائط. لكن في جميع الحالات الأخرى، استخدم المُداوِلان .done()
أو .fail()
حصريًا نظرًا لأن الوسائط سيكون لها ترتيب معروف جيدًا.
مثال
بما أن التابع jQuery.get()
يُعيد كائن jqXHR
، وهو مشتق من كائن مؤجل، يمكننا إرفاق رد نداء لكل من النجاح والفشل باستخدام التابع deferred.always()
.
$.get( "test.php" ).always(function() {
alert( "$.get completed with success or error callback arguments" );
});