کلاس onDisconnect
به شما امکان می دهد زمانی که کلاینت شما از سرور پایگاه داده قطع می شود، داده ها را بنویسید یا پاک کنید. این بهروزرسانیها چه اتصال کلاینت شما بهطور تمیز قطع شود یا خیر، رخ میدهند، بنابراین میتوانید برای پاکسازی دادهها به آنها اعتماد کنید، حتی اگر اتصال قطع شود یا کلاینت خراب شود.
کلاس onDisconnect
معمولاً برای مدیریت حضور در برنامههایی استفاده میشود که در آن تشخیص تعداد کلاینتها و زمانی که دیگر کلاینتها قطع میشوند مفید است. برای اطلاعات بیشتر به فعال کردن قابلیتهای آفلاین در جاوا اسکریپت مراجعه کنید.
برای جلوگیری از بروز مشکل در هنگام قطع اتصال قبل از انتقال درخواست ها به سرور پایگاه داده، این توابع باید قبل از نوشتن هر گونه داده فراخوانی شوند.
توجه داشته باشید که عملیات onDisconnect
فقط یک بار راه اندازی می شود. اگر میخواهید هر بار که قطع ارتباط میشود، عملیاتی رخ دهد، باید هر بار که دوباره وصل میشوید، عملیات onDisconnect
را مجدداً برقرار کنید.
امضا:
export declare class OnDisconnect
مواد و روش ها
روش | اصلاح کننده ها | شرح |
---|---|---|
لغو() | تمام رویدادهای تنظیم یا بهروزرسانی قبلی onDisconnect() را برای این مکان و همه کودکان در صف لغو میکند. اگر یک نوشتن برای این مکان از طریق یک set() یا update() در یک مکان والد در صف قرار گرفته باشد، نوشتن در این مکان لغو می شود، اگرچه نوشتن به مکان های خواهر و برادر همچنان رخ می دهد. | |
برداشتن() | اطمینان حاصل می کند که داده های این مکان هنگام قطع ارتباط مشتری (به دلیل بسته شدن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) حذف می شوند. | |
مجموعه (مقدار) | اطمینان حاصل می کند که داده ها در این مکان روی مقدار مشخص شده در هنگام قطع ارتباط مشتری (به دلیل بستن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) تنظیم شده است. set() مخصوصاً برای پیادهسازی سیستمهای "presence" مفید است، جایی که یک مقدار باید تغییر یا پاک شود وقتی کاربر قطع میشود به طوری که برای سایر کاربران "آفلاین" ظاهر شود. برای اطلاعات بیشتر به فعال کردن قابلیتهای آفلاین در جاوا اسکریپت مراجعه کنید. توجه داشته باشید که عملیات onDisconnect فقط یک بار راه اندازی می شود. اگر میخواهید هر بار که قطع ارتباط میشود، عملیاتی رخ دهد، باید هر بار عملیات onDisconnect را مجدداً برقرار کنید. | |
setWithPriority (مقدار، اولویت) | اطمینان حاصل می کند که داده های این مکان روی مقدار و اولویت مشخص شده در هنگام قطع ارتباط مشتری (به دلیل بستن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) تنظیم شده است. | |
به روز رسانی (مقادیر) | هنگامی که ارتباط مشتری قطع می شود (به دلیل بسته شدن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) چندین مقدار را در این مکان می نویسد. آرگومان values شامل چندین جفت ویژگی-مقدار است که با هم در پایگاه داده نوشته خواهند شد. هر ویژگی فرزند می تواند یک ویژگی ساده (مثلاً "نام") یا یک مسیر نسبی (مثلا "نام/اول") از مکان فعلی تا داده ها برای به روز رسانی باشد. برخلاف متد set() ، update() می توان برای به روز رسانی انتخابی تنها ویژگی های ارجاع شده در مکان فعلی استفاده کرد (به جای جایگزینی تمام ویژگی های فرزند در مکان فعلی). |
OnDisconnect.cancel()
تمام رویدادهای تنظیم یا بهروزرسانی قبلی onDisconnect()
را برای این مکان و همه کودکان در صف لغو میکند.
اگر یک نوشتن برای این مکان از طریق یک set()
یا update()
در یک مکان والد در صف قرار گرفته باشد، نوشتن در این مکان لغو می شود، اگرچه نوشتن به مکان های خواهر و برادر همچنان رخ می دهد.
امضا:
cancel(): Promise<void>;
برمی گرداند:
قول<باطل>
هنگامی که همگام سازی با سرور کامل شد، حل می شود.
OnDisconnect.remove()
اطمینان حاصل می کند که داده های این مکان هنگام قطع ارتباط مشتری (به دلیل بسته شدن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) حذف می شوند.
امضا:
remove(): Promise<void>;
برمی گرداند:
قول<باطل>
هنگامی که همگام سازی با سرور کامل شد، حل می شود.
OnDisconnect.set()
اطمینان حاصل می کند که داده ها در این مکان روی مقدار مشخص شده در هنگام قطع ارتباط مشتری (به دلیل بستن مرورگر، پیمایش به صفحه جدید یا مشکلات شبکه) تنظیم شده است.
set()
مخصوصاً برای پیادهسازی سیستمهای "presence" مفید است، جایی که یک مقدار باید تغییر یا پاک شود وقتی کاربر قطع میشود به طوری که برای سایر کاربران "آفلاین" ظاهر شود. برای اطلاعات بیشتر به فعال کردن قابلیتهای آفلاین در جاوا اسکریپت مراجعه کنید.
توجه داشته باشید که عملیات 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>;
مولفه های
پارامتر | تایپ کنید | شرح |
---|---|---|
ارزش های | هدف - شی | شی حاوی چندین مقدار |
برمی گرداند:
قول<باطل>
هنگامی که همگام سازی با پایگاه داده کامل شد، حل می شود.