التابع deferred.always()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

من موسوعة حسوب

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" );
});

مصادر