database.DataSnapshot class

رابطی که نمایانگر یک عکس فوری داده پایگاه داده Firebase Realtime است.

امضا:

export declare class DataSnapshot implements database.DataSnapshot 

پیاده سازی ها: database.DataSnapshot

سازندگان

سازنده اصلاح کننده ها شرح
(سازنده) (داده، مسیر، برنامه، نمونه) یک نمونه جدید از کلاس DataSnapshot می سازد

خواص

ویژگی اصلاح کننده ها تایپ کنید شرح
نمونه، مثال رشته
کلید رشته | خالی کلید (آخرین قسمت مسیر) محل این DataSnapshot . آخرین نشانه در یک مکان پایگاه داده، کلید آن در نظر گرفته می شود. به عنوان مثال، "ada" کلید گره /users/ada/ است. دسترسی به کلید در هر DataSnapshot ، کلید مکانی را که آن را ایجاد کرده است، برمی گرداند. با این حال، دسترسی به کلید در URL ریشه یک پایگاه داده، null برمی‌گرداند.
مرجع پایگاه داده.مرجع یک [ Reference ](/docs/reference/admin/node/admin.database.Reference) را به محل پایگاه داده که در آن نوشتن راه‌اندازی رخ داده است، برمی‌گرداند. دسترسی کامل به خواندن و نوشتن دارد.

مواد و روش ها

روش اصلاح کننده ها شرح
کودک (childPath) یک DataSnapshot برای مکان در مسیر نسبی مشخص شده دریافت می کند. مسیر نسبی می تواند یک نام ساده فرزند باشد (مثلاً "ada") یا یک مسیر جدا شده با اسلش عمیق تر (به عنوان مثال، "ada/name/first").
وجود دارد() اگر این DataSnapshot حاوی داده‌ای باشد، true برمی‌گرداند. کمی کارآمدتر از استفاده از snapshot.val() !== null است. true اگر این DataSnapshot حاوی داده ای باشد. در غیر این صورت، false
exportVal() کل محتویات DataSnapshot را به عنوان یک شی جاوا اسکریپت صادر می کند. محتویات DataSnapshot به عنوان یک مقدار جاوا اسکریپت (شیء، آرایه، رشته، عدد، بولی یا null ).
برای هر (عمل) DataSnapshot اقلام فرزندان را بر می شمارد. به دلیل نحوه کار اشیاء جاوا اسکریپت، ترتیب داده ها در شی جاوا اسکریپت که توسط val() برگردانده می شود تضمینی برای مطابقت با ترتیب روی سرور یا ترتیب رویدادهای child_added نیست. اینجاست که forEach() به کار می آید. این تضمین می کند که فرزندان یک DataSnapshot می توانند به ترتیب درخواست خود تکرار شوند. اگر از روش صریح orderBy*() استفاده نشود، نتایج به ترتیب با کلید برگردانده می شوند (مگر اینکه از اولویت ها استفاده شود، در این صورت، نتایج بر اساس اولویت برگردانده می شوند).
getPriority() مقدار اولویت داده ها را در این DataSnapshot دریافت می کند. به عنوان جایگزینی برای استفاده از اولویت، برنامه‌ها می‌توانند مجموعه‌ها را براساس ویژگی‌های معمولی سفارش دهند. به [مرتب‌سازی و فیلتر کردن داده‌ها] (/docs/database/web/lists-of-data#sorting_and_filtering_data) مراجعه کنید. ارزش اولویت داده ها
hasChild (childPath) اگر مسیر فرزند مشخص شده دارای داده های (غیر null ) باشد، true را برمی گرداند.
hasChildren() نشان می دهد که آیا DataSnapshot دارای ویژگی های فرزند غیر null است یا خیر. شما می توانید از hasChildren() برای تعیین اینکه آیا یک DataSnapshot دارای فرزند است یا خیر استفاده کنید. اگر اینطور است، می توانید آنها را با استفاده از forEach() برشمارید. اگر اینطور نیست، پس یا این عکس فوری حاوی یک مقدار اولیه است (که می تواند با val() بازیابی شود) یا خالی است (در این صورت، val() null را برمی گرداند). true اگر این عکس فوری دارای فرزند باشد. دیگر false .
numChildren() تعداد ویژگی های فرزند این DataSnapshot را برمی گرداند. تعداد خصوصیات فرزند این DataSnapshot .
toJSON() نمایشی قابل سریال‌سازی با JSON از این شی را برمی‌گرداند. نمایش JSON-Serializable از این شی.
val() یک مقدار جاوا اسکریپت را از DataSnapshot استخراج می کند. بسته به داده های یک DataSnapshot ، متد val() ممکن است یک نوع اسکالر (رشته، عدد، یا بولی)، یک آرایه یا یک شی را برگرداند. همچنین ممکن است null برگرداند که نشان می دهد DataSnapshot خالی است (حاوی داده ای نیست). محتویات عکس فوری به عنوان یک مقدار جاوا اسکریپت (شیء، آرایه، رشته، عدد، بولی یا null ).

database.DataSnapshot.(سازنده)

یک نمونه جدید از کلاس DataSnapshot می سازد

امضا:

constructor(data: any, path?: string, // path is undefined for the database root
    app?: App, instance?: string);

مولفه های

پارامتر تایپ کنید شرح
داده ها هر
مسیر رشته
برنامه برنامه
نمونه، مثال رشته

database.DataSnapshot.instance

امضا:

instance: string;

پایگاه داده.DataSnapshot.key

کلید (آخرین قسمت مسیر) محل این DataSnapshot .

آخرین نشانه در یک مکان پایگاه داده، کلید آن در نظر گرفته می شود. به عنوان مثال، "ada" کلید گره /users/ada/ است. دسترسی به کلید در هر DataSnapshot ، کلید مکانی را که آن را ایجاد کرده است، برمی گرداند. با این حال، دسترسی به کلید در URL ریشه یک پایگاه داده، null را برمی‌گرداند .

امضا:

get key(): string | null;

پایگاه داده.DataSnapshot.ref

یک [ Reference ](/docs/reference/admin/node/admin.database.Reference) به مکان پایگاه داده که در آن نوشتن راه اندازی رخ داده است. دسترسی کامل به خواندن و نوشتن دارد.

امضا:

get ref(): database.Reference;

database.DataSnapshot.child()

یک DataSnapshot برای مکان در مسیر نسبی مشخص شده دریافت می کند.

مسیر نسبی می تواند یک نام ساده فرزند باشد (مثلاً "ada") یا یک مسیر جدا شده با اسلش عمیق تر (به عنوان مثال، "ada/name/first").

امضا:

child(childPath: string): DataSnapshot;

مولفه های

پارامتر تایپ کنید شرح
childPath رشته

برمی‌گرداند:

DataSnapshot

database.DataSnapshot.exists()

اگر این DataSnapshot حاوی داده‌ای باشد، true برمی‌گرداند. کمی کارآمدتر از استفاده از snapshot.val() !== null است .

true اگر این DataSnapshot حاوی داده ای باشد. در غیر این صورت، false .

امضا:

exists(): boolean;

برمی‌گرداند:

بولی

database.DataSnapshot.exportVal()

کل محتویات DataSnapshot را به عنوان یک شی جاوا اسکریپت صادر می کند.

محتویات DataSnapshot به عنوان مقدار جاوا اسکریپت (شیء، آرایه، رشته، عدد، بولی یا null ).

امضا:

exportVal(): any;

برمی‌گرداند:

هر

database.DataSnapshot.forEach()

DataSnapshot را بر می شمارد از اقلام کودکان

به دلیل نحوه کار اشیاء جاوا اسکریپت، ترتیب داده ها در شی جاوا اسکریپت که توسط val() برگردانده می شود تضمینی برای مطابقت با ترتیب روی سرور یا ترتیب رویدادهای child_added نیست. اینجاست که forEach() به کار می آید. این تضمین می کند که فرزندان یک DataSnapshot می توانند به ترتیب درخواست خود تکرار شوند.

اگر از روش صریح orderBy*() استفاده نشود، نتایج به ترتیب با کلید برگردانده می شوند (مگر اینکه از اولویت ها استفاده شود، در این صورت، نتایج بر اساس اولویت برگردانده می شوند).

امضا:

forEach(action: (a: IteratedDataSnapshot) => boolean | void): boolean;

مولفه های

پارامتر تایپ کنید شرح
عمل (الف: IteratedDataSnapshot) => بولی | خالی تابعی که برای هر فرزند DataSnapshot فراخوانی می شود. برای لغو شمارش بیشتر، تماس برگشتی می تواند true باشد. true اگر شمارش به دلیل برگشت تماس شما true لغو شد.

برمی‌گرداند:

بولی

database.DataSnapshot.getPriority()

مقدار اولویت داده ها را در این DataSnapshot دریافت می کند .

به عنوان جایگزینی برای استفاده از اولویت، برنامه‌ها می‌توانند مجموعه‌ها را براساس ویژگی‌های معمولی سفارش دهند. به [مرتب‌سازی و فیلتر کردن داده‌ها] (/docs/database/web/lists-of-data#sorting_and_filtering_data) مراجعه کنید.

ارزش اولویت داده ها

امضا:

getPriority(): string | number | null;

برمی‌گرداند:

رشته | شماره | خالی

database.DataSnapshot.hasChild()

اگر مسیر فرزند مشخص شده دارای (non- null باشد، مقدار true را برمی گرداند ) داده ها.

امضا:

hasChild(childPath: string): boolean;

مولفه های

پارامتر تایپ کنید شرح
childPath رشته

برمی‌گرداند:

بولی

database.DataSnapshot.hasChildren()

نشان می دهد که آیا DataSnapshot دارای ویژگی های فرزند غیر null است یا خیر.

شما می توانید از hasChildren() برای تعیین اینکه آیا یک DataSnapshot دارای فرزند است یا خیر استفاده کنید. اگر اینطور است، می توانید آنها را با استفاده از forEach() برشمارید. . اگر اینطور نیست، این عکس فوری حاوی یک مقدار اولیه است (که می تواند با val() بازیابی شود. ) یا خالی است (در این صورت val() null را برمی گرداند ).

true اگر این عکس فوری دارای فرزند باشد. false دیگر .

امضا:

hasChildren(): boolean;

برمی‌گرداند:

بولی

database.DataSnapshot.numChildren()

تعداد ویژگی های فرزند این DataSnapshot را برمی گرداند .

تعداد خصوصیات فرزند این DataSnapshot .

امضا:

numChildren(): number;

برمی‌گرداند:

عدد

database.DataSnapshot.toJSON()

نمایشی قابل سریال‌سازی با JSON از این شی را برمی‌گرداند.

نمایش JSON-Serializable از این شی.

امضا:

toJSON(): Record<string, unknown>;

برمی‌گرداند:

ضبط <رشته، ناشناخته>

database.DataSnapshot.val()

یک مقدار جاوا اسکریپت را از DataSnapshot استخراج می کند .

بسته به داده های یک DataSnapshot متد val() ممکن است یک نوع اسکالر (رشته، عدد یا بولی)، یک آرایه یا یک شی را برگرداند. همچنین ممکن است null برگرداند ، نشان می دهد که DataSnapshot خالی است (حاوی داده ای نیست).

محتویات عکس فوری به عنوان یک مقدار جاوا اسکریپت (شیء، آرایه، رشته، عدد، بولی یا null ).

امضا:

val(): any;

برمی‌گرداند:

هر