OnDisconnect class

تسمح لك فئة onDisconnect بكتابة البيانات أو مسحها عندما ينقطع اتصال العميل بخادم قاعدة البيانات. تحدث هذه التحديثات سواء تم قطع اتصال عميلك بشكل نظيف أم لا، لذا يمكنك الاعتماد عليها لتنظيف البيانات حتى في حالة انقطاع الاتصال أو تعطل العميل.

يتم استخدام فئة onDisconnect بشكل شائع لإدارة التواجد في التطبيقات حيث يكون من المفيد اكتشاف عدد العملاء المتصلين ومتى يتم قطع اتصال العملاء الآخرين. راجع تمكين القدرات دون اتصال في JavaScript لمزيد من المعلومات.

لتجنب المشاكل عند انقطاع الاتصال قبل أن يتم نقل الطلبات إلى خادم قاعدة البيانات، يجب استدعاء هذه الوظائف قبل كتابة أي بيانات.

لاحظ أن عمليات onDisconnect يتم تشغيلها مرة واحدة فقط. إذا كنت تريد إجراء عملية في كل مرة يتم فيها قطع الاتصال، فستحتاج إلى إعادة تأسيس عمليات onDisconnect في كل مرة تقوم فيها بإعادة الاتصال.

إمضاء:

export declare class OnDisconnect 

طُرق

طريقة الصفات التعريفية وصف
يلغي() يلغي جميع الأحداث التي تم وضعها في قائمة الانتظار مسبقًا onDisconnect() أو يقوم بتحديث الأحداث لهذا الموقع وجميع الأحداث التابعة. إذا تم وضع عملية الكتابة في قائمة الانتظار لهذا الموقع عبر set() أو update() في موقع أصلي، فسيتم إلغاء الكتابة في هذا الموقع، على الرغم من أن عمليات الكتابة إلى المواقع الشقيقة ستظل تحدث.
يزيل() يضمن حذف البيانات الموجودة في هذا الموقع عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).
مجموعة (القيمة) يضمن تعيين البيانات في هذا الموقع على القيمة المحددة عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة). يعد set() مفيدًا بشكل خاص في تنفيذ أنظمة "التواجد"، حيث يجب تغيير القيمة أو مسحها عندما ينقطع اتصال المستخدم بحيث يظهر للمستخدمين الآخرين "غير متصلين". راجع تمكين القدرات دون اتصال في JavaScript لمزيد من المعلومات. لاحظ أن عمليات onDisconnect يتم تشغيلها مرة واحدة فقط. إذا كنت تريد إجراء عملية في كل مرة يتم فيها قطع الاتصال، فسوف تحتاج إلى إعادة تأسيس عمليات onDisconnect في كل مرة.
setWithPriority(القيمة، الأولوية) يضمن تعيين البيانات في هذا الموقع على القيمة والأولوية المحددة عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).
التحديث (القيم) يكتب قيمًا متعددة في هذا الموقع عندما يكون العميل غير متصل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة). تحتوي وسيطة values على أزواج متعددة من قيم الخصائص التي سيتم كتابتها في قاعدة البيانات معًا. يمكن أن تكون كل خاصية فرعية إما خاصية بسيطة (على سبيل المثال، "اسم") أو مسارًا نسبيًا (على سبيل المثال، "الاسم/الأول") من الموقع الحالي إلى البيانات المطلوب تحديثها. على عكس الأسلوب set() ، يمكن استخدام update() لتحديث الخصائص المشار إليها فقط في الموقع الحالي بشكل انتقائي (بدلاً من استبدال جميع الخصائص الفرعية في الموقع الحالي).

OnDisconnect.cancel()

يلغي جميع الأحداث التي تم وضعها في قائمة الانتظار مسبقًا onDisconnect() أو يقوم بتحديث الأحداث لهذا الموقع وجميع الأحداث التابعة.

إذا تم وضع عملية الكتابة في قائمة الانتظار لهذا الموقع عبر set() أو update() في موقع أصلي، فسيتم إلغاء الكتابة في هذا الموقع، على الرغم من أن عمليات الكتابة إلى المواقع الشقيقة ستظل تحدث.

إمضاء:

cancel(): Promise<void>;

عائدات:

وعد<باطل>

يتم حله عند اكتمال المزامنة مع الخادم.

OnDisconnect.remove()

يضمن حذف البيانات الموجودة في هذا الموقع عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).

إمضاء:

remove(): Promise<void>;

عائدات:

وعد<باطل>

يتم حله عند اكتمال المزامنة مع الخادم.

OnDisconnect.set()

يضمن تعيين البيانات في هذا الموقع على القيمة المحددة عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).

يعد set() مفيدًا بشكل خاص في تنفيذ أنظمة "التواجد"، حيث يجب تغيير القيمة أو مسحها عندما ينقطع اتصال المستخدم بحيث يظهر للمستخدمين الآخرين "غير متصلين". راجع تمكين القدرات دون اتصال في JavaScript لمزيد من المعلومات.

لاحظ أن عمليات onDisconnect يتم تشغيلها مرة واحدة فقط. إذا كنت تريد إجراء عملية في كل مرة يتم فيها قطع الاتصال، فسوف تحتاج إلى إعادة تأسيس عمليات onDisconnect في كل مرة.

إمضاء:

set(value: unknown): Promise<void>;

حدود

معامل يكتب وصف
قيمة مجهول القيمة التي سيتم كتابتها إلى هذا الموقع عند قطع الاتصال (يمكن أن تكون كائنًا أو صفيفًا أو سلسلة أو رقمًا أو منطقيًا أو خاليًا).

عائدات:

وعد<باطل>

يتم حله عند اكتمال المزامنة مع قاعدة البيانات.

OnDisconnect.setWithPriority()

يضمن تعيين البيانات في هذا الموقع على القيمة والأولوية المحددة عند قطع اتصال العميل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).

إمضاء:

setWithPriority(value: unknown, priority: number | string | null): Promise<void>;

حدود

معامل يكتب وصف
قيمة مجهول القيمة التي سيتم كتابتها إلى هذا الموقع عند قطع الاتصال (يمكن أن تكون كائنًا أو صفيفًا أو سلسلة أو رقمًا أو منطقيًا أو خاليًا).
أولوية رقم | سلسلة | باطل الأولوية المراد كتابتها (سلسلة، رقم، أو خالية).

عائدات:

وعد<باطل>

يتم حله عند اكتمال المزامنة مع قاعدة البيانات.

OnDisconnect.update()

يكتب قيمًا متعددة في هذا الموقع عندما يكون العميل غير متصل (بسبب إغلاق المتصفح، أو الانتقال إلى صفحة جديدة، أو مشكلات في الشبكة).

تحتوي وسيطة values على أزواج متعددة من قيم الخصائص التي سيتم كتابتها في قاعدة البيانات معًا. يمكن أن تكون كل خاصية فرعية إما خاصية بسيطة (على سبيل المثال، "الاسم") أو مسارًا نسبيًا (على سبيل المثال، "الاسم/الأول") من الموقع الحالي إلى البيانات المطلوب تحديثها.

على عكس الأسلوب set() ، يمكن استخدام update() لتحديث الخصائص المشار إليها فقط في الموقع الحالي بشكل انتقائي (بدلاً من استبدال جميع الخصائص الفرعية في الموقع الحالي).

إمضاء:

update(values: object): Promise<void>;

حدود

معامل يكتب وصف
قيم هدف كائن يحتوي على قيم متعددة.

عائدات:

وعد<باطل>

يتم حله عند اكتمال المزامنة مع قاعدة البيانات.