رابطی که نمایانگر یک عکس فوری داده پایگاه داده 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 | رشته |
برمی گرداند:
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: DataSnapshot) => boolean | void): boolean;
مولفه های
پارامتر | تایپ کنید | شرح |
---|---|---|
عمل | (الف: DataSnapshot ) => بولی | خالی | تابعی که برای هر فرزند 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;
برمی گرداند:
هر