database.DataSnapshot class

واجهة تمثّل لقطة بيانات لقاعدة بيانات Firebase في الوقت الفعلي.

Signature:

export declare class DataSnapshot implements database.DataSnapshot 

التنفيذ: data.DataSnapshot

الشركات المصنِّعة

الشركة المصنِّعة المعدِّلات الوصف
(دالة الإنشاء)(data, path, app, يؤثر) إنشاء مثيل جديد لفئة DataSnapshot

أماكن إقامة

الموقع المعدِّلات النوع الوصف
مثيل السلسلة
مفتاح سلسلة | فارغ المفتاح (الجزء الأخير من المسار) الخاص بموقع DataSnapshot هذا.يعتبر الرمز المميز الأخير في أي موقع قاعدة بيانات هو المفتاح الخاص به. على سبيل المثال، "ada" هو المفتاح للعقدة /users/ada/. يؤدي الوصول إلى المفتاح في أي DataSnapshot إلى عرض مفتاح الموقع الجغرافي الذي أنشأه. ومع ذلك، يؤدي الوصول إلى المفتاح على عنوان URL الجذر لقاعدة البيانات إلى إرجاع null.
ref قاعدة البيانات.مرجع تعرض [Reference](/docs/reference/admin/node/admin.database.Reference) في موقع قاعدة البيانات حيث حدث الكتابة المشغِّلة. لديه إذن وصول كامل للقراءة والكتابة.

الطُرق

الطريقة المعدِّلات الوصف
child(childPath) تحصل على DataSnapshot للموقع الجغرافي في المسار النسبي المحدّد.يمكن أن يكون المسار النسبي إما اسمًا بسيطًا ثانويًا (مثل "ada") أو مسارًا أعمق مفصولاً بشرطة مائلة (مثل "ada/name/first").
exists() تعرض true إذا كانت DataSnapshot تحتوي على أي بيانات. وهو أكثر فعالية قليلاً من استخدام snapshot.val() !== null. true إذا كانت قيمة DataSnapshot هذه تحتوي على أي بيانات وإلا، false.
exportVal() تصدِّر هذه السياسة محتوى DataSnapshot بالكامل ككائن JavaScript. محتوى DataSnapshot كقيمة JavaScript (كائن أو مصفوفة أو سلسلة أو رقم أو قيمة منطقية أو null).
for each(action) لسرد DataSnapshot للعناصر الثانوية.بسبب طريقة عمل كائنات JavaScript، لا يمكن ضمان تطابُق ترتيب البيانات في كائن JavaScript الذي يعرضه val() مع الترتيب على الخادم ولا ترتيب أحداث child_added. وهنا يأتي دور forEach(). تضمن إمكانية تكرار عناصر DataSnapshot الثانوية بترتيب طلب البحث.في حال عدم استخدام طريقة orderBy*() الصريحة، يتم عرض النتائج مرتبة حسب المفتاح (ما لم يتم استخدام الأولويات، وفي هذه الحالة، يتم عرض النتائج حسب الأولوية).
getPriority() تحصل على قيمة الأولوية للبيانات في DataSnapshot.بدلاً من استخدام الأولوية، يمكن للتطبيقات ترتيب المجموعات حسب المواقع العادية. راجع [فرز البيانات وتصفيتها](/docs/database/web/lists-of-data#sorting_and_filtering_data). قيمة أولوية البيانات.
hasChild(childPath) تعرض true إذا كان المسار الفرعي المحدد يحتوي على بيانات (غير null).
hasChildren() تعرِض ما إذا كان DataSnapshot يتضمّن أي سمات فرعية غير تابعة إلى null.يمكنك استخدام hasChildren() لتحديد ما إذا كان DataSnapshot يتضمّن أي سمات فرعية. إذا كان الأمر كذلك، يمكنك تعدادها باستخدام forEach(). وفي حال عدم التطابق، يعني ذلك أنّ هذه اللقطة تحتوي على قيمة أولية (يمكن استردادها باستخدام val()) أو تكون فارغة (في هذه الحالة، تعرض val() القيمة null). true إذا كانت هذه اللقطة تحتوي على أي عناصر ثانوية أما false، فهو آخر.
numChildren() تعرض عدد السمات الفرعية الخاصة بسمة DataSnapshot هذه. عدد المواقع الفرعية في هذا DataSnapshot.
toJSON() تعرض تمثيلاً بتنسيق JSON لهذا الكائن. تمثّل هذه السمة تمثيلاً بتنسيق JSON لهذا العنصر.
val() لاستخراج قيمة JavaScript من DataSnapshot.استنادًا إلى البيانات في DataSnapshot، قد تعرض الطريقة val() نوعًا عدديًا (سلسلة أو رقم أو قيمة منطقية) أو مصفوفة أو كائنًا. وقد تعرض أيضًا القيمة null، ما يشير إلى أنّ قيمة DataSnapshot فارغة (لا تحتوي على بيانات). محتوى اللقطة كقيمة JavaScript (كائن أو مصفوفة أو سلسلة أو رقم أو قيمة منطقية أو null).

base.DataSnapshot.(دالة إنشائية)

إنشاء مثيل جديد لفئة DataSnapshot

Signature:

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

المَعلمات

المعلمة النوع الوصف
البيانات أي
المسار السلسلة
التطبيق التطبيق
مثيل السلسلة

قاعدة البيانات.DataSnapshot.instance

Signature:

instance: string;

قاعدة البيانات.DataSnapshot.key

المفتاح (الجزء الأخير من المسار) الخاص بموقع DataSnapshot هذا.

يعتبر الرمز المميز الأخير في موقع قاعدة البيانات هو المفتاح الخاص به. على سبيل المثال، "ada" هو المفتاح للعقدة /users/ada/. يؤدي الوصول إلى المفتاح في أي DataSnapshot إلى عرض مفتاح الموقع الجغرافي الذي أنشأه. ومع ذلك، يؤدي الوصول إلى المفتاح على عنوان URL الجذر لقاعدة بيانات إلى إرجاع null.

Signature:

get key(): string | null;

قاعدة البيانات.DataSnapshot.ref

تعرض [Reference](/docs/reference/admin/node/admin.database.Reference) إلى موقع قاعدة البيانات حيث حدثت عملية الكتابة المطلوبة. لديه إذن وصول كامل للقراءة والكتابة.

Signature:

get ref(): database.Reference;

data.DataSnapshot.child()

تحصل على DataSnapshot للموقع الجغرافي في المسار النسبي المحدّد.

ويمكن أن يكون المسار النسبي اسمًا فرعيًا بسيطًا (مثل "ada") أو مسارًا أعمق مفصولاً بشرطة مائلة (مثل "ada/name/first").

Signature:

child(childPath: string): DataSnapshot;

المَعلمات

المعلمة النوع الوصف
مَعلمة childPath السلسلة

المرتجعات:

نبذة عن البيانات

data.DataSnapshot.exists()

تعرض true إذا كانت DataSnapshot تحتوي على أي بيانات. وهو أكثر فعالية قليلاً من استخدام snapshot.val() !== null.

true إذا كانت قيمة DataSnapshot هذه تحتوي على أي بيانات وبخلاف ذلك، false.

Signature:

exists(): boolean;

المرتجعات:

قيمة منطقية

data.DataSnapshot.exportVal()

تصدِّر هذه السياسة محتوى DataSnapshot بالكامل ككائن JavaScript.

محتوى DataSnapshot كقيمة JavaScript (كائن أو مصفوفة أو سلسلة أو رقم أو قيمة منطقية أو null).

Signature:

exportVal(): any;

المرتجعات:

أي

base.DataSnapshot.for مستندات()

لتعداد DataSnapshot من العناصر الثانوية.

لا تضمن طريقة عمل كائنات JavaScript أنّ ترتيب البيانات في كائن JavaScript الذي يعرضه val() سيطابق الترتيب على الخادم ولا مع ترتيب أحداث child_added. وهنا يأتي دور forEach(). ويضمن هذا الإجراء إمكانية تكرار عناصر DataSnapshot الثانوية بترتيب طلبات البحث.

في حال عدم استخدام طريقة orderBy*() صريحة، يتم عرض النتائج مرتبة حسب المفتاح (ما لم يتم استخدام الأولويات، وفي هذه الحالة، يتم عرض النتائج حسب الأولوية).

Signature:

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

المَعلمات

المعلمة النوع الوصف
إجراء (أ: IteratedDataSnapshot) => منطقية | فراغ دالة يتم طلبها لكل DataSnapshot فرعي. يمكن لمعاودة الاتصال إعادة الاتصال true لإلغاء التعداد الإضافي. true إذا تم إلغاء التعداد بسبب معاودة الاتصال بك في true.

المرتجعات:

قيمة منطقية

data.DataSnapshot.getPriority()

الحصول على قيمة الأولوية للبيانات في DataSnapshot

بدلاً من استخدام الأولوية، يمكن للتطبيقات ترتيب المجموعات حسب السمات العادية. راجع [فرز البيانات وتصفيتها](/docs/database/web/lists-of-data#sorting_and_filtering_data).

قيمة أولوية البيانات.

Signature:

getPriority(): string | number | null;

المرتجعات:

سلسلة | الرقم | فارغ

قاعدة البيانات.DataSnapshot.hasChild()

تعرض true إذا كان المسار الفرعي المحدد يحتوي على بيانات (لا تتبع null).

Signature:

hasChild(childPath: string): boolean;

المَعلمات

المعلمة النوع الوصف
مَعلمة childPath السلسلة

المرتجعات:

قيمة منطقية

data.DataSnapshot.hasChildren()

تعرض ما إذا كان DataSnapshot يحتوي على أي خصائص فرعية غير تابعة لـ null أم لا.

يمكنك استخدام hasChildren() لتحديد ما إذا كان هناك أي أطفال في DataSnapshot. إذا كان الأمر كذلك، يمكنك تعدادها باستخدام forEach(). وفي حال عدم التطابق، يعني ذلك أنّ هذه اللقطة تحتوي على قيمة أولية (يمكن استردادها باستخدام val()) أو تكون فارغة (في هذه الحالة، تعرض val() القيمة null).

true إذا كانت هذه اللقطة تحتوي على أي عناصر ثانوية غير ذلك false.

Signature:

hasChildren(): boolean;

المرتجعات:

قيمة منطقية

data.DataSnapshot.numChildren()

تعرض عدد الخصائص الفرعية لهذه DataSnapshot.

عدد المواقع الفرعية الخاصة بهذا DataSnapshot

Signature:

numChildren(): number;

المرتجعات:

رقم

data.DataSnapshot.toJSON()

تعرض تمثيلاً بتنسيق JSON لهذا الكائن.

تمثّل هذه السمة تمثيلاً بتنسيق JSON لهذا العنصر.

Signature:

toJSON(): Record<string, unknown>;

المرتجعات:

سجلّ<string، غير معروف>

data.DataSnapshot.val()

لاستخراج قيمة JavaScript من DataSnapshot

استنادًا إلى البيانات في DataSnapshot، قد تعرض الطريقة val() نوعًا عدديًا (سلسلة أو رقم أو قيمة منطقية) أو مصفوفة أو كائن. وقد يعرض أيضًا null، ما يشير إلى أن DataSnapshot فارغة (لا تحتوي على بيانات).

محتوى اللقطة كقيمة JavaScript (كائن أو مصفوفة أو سلسلة أو رقم أو قيمة منطقية أو null).

Signature:

val(): any;

المرتجعات:

أي