database.DataSnapshot class

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

إمضاء:

export declare class DataSnapshot implements database.DataSnapshot 

تنفذ: قاعدة بيانات.DataSnapshot

البنائين

البناء الصفات التعريفية وصف
(المنشئ) (البيانات، المسار، التطبيق، المثيل) إنشاء مثيل جديد لفئة DataSnapshot

ملكيات

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

طُرق

طريقة الصفات التعريفية وصف
طفل (مسار الطفل) يحصل على DataSnapshot للموقع على المسار النسبي المحدد. يمكن أن يكون المسار النسبي إما اسمًا فرعيًا بسيطًا (على سبيل المثال، "ada") أو مسارًا أعمق مفصولاً بشرطة مائلة (على سبيل المثال، "ada/name/first").
موجود () يُرجع true إذا كانت DataSnapshot تحتوي على أي بيانات. إنه أكثر كفاءة قليلًا من استخدام snapshot.val() !== null . true إذا كانت DataSnapshot تحتوي على أي بيانات؛ وإلا فهو false .
اكسبورتفال () تصدير محتويات DataSnapshot بالكامل ككائن JavaScript. محتويات DataSnapshot كقيمة JavaScript (Object أو Array أو string أو number أو boolean أو null ).
لكل (إجراء) تعداد DataSnapshot للعناصر الفرعية. نظرًا للطريقة التي تعمل بها كائنات JavaScript، فإن ترتيب البيانات في كائن JavaScript الذي يتم إرجاعه بواسطة val() ليس مضمونًا لمطابقة الترتيب على الخادم ولا ترتيب الأحداث child_added . هذا هو المكان الذي يكون فيه forEach() مفيدًا. فهو يضمن إمكانية تكرار العناصر الفرعية لـ DataSnapshot بترتيب الاستعلام الخاص بهم. إذا لم يتم استخدام طريقة orderBy*() صريحة، فسيتم إرجاع النتائج مرتبة حسب المفتاح (ما لم يتم استخدام الأولويات، وفي هذه الحالة، يتم إرجاع النتائج حسب الأولوية).
الحصول على الأولوية () يحصل على قيمة الأولوية للبيانات الموجودة في DataSnapshot . كبديل لاستخدام الأولوية، يمكن للتطبيقات ترتيب المجموعات حسب الخصائص العادية. راجع [فرز البيانات وتصفيتها](/docs/database/web/lists-of-data#sorting_and_filtering_data). قيمة الأولوية للبيانات.
هاتشايلد (مسار الطفل) يُرجع true إذا كان المسار الفرعي المحدد يحتوي على بيانات (غير null ).
لديها اطفال() إرجاع ما إذا كان DataSnapshot يحتوي على أي خصائص فرعية غير null أم لا. يمكنك استخدام hasChildren() لتحديد ما إذا كان DataSnapshot يحتوي على أي أطفال. إذا كان الأمر كذلك، فيمكنك تعدادها باستخدام forEach() . إذا لم يكن الأمر كذلك، فإما أن هذه اللقطة تحتوي على قيمة أولية (والتي يمكن استرجاعها باستخدام val() ) أو أنها فارغة (في هذه الحالة، تُرجع val() null ). true إذا كانت هذه اللقطة بها أي أطفال؛ آخر false .
عدد الأطفال() إرجاع عدد الخصائص الفرعية لـ DataSnapshot . عدد الخصائص الفرعية لـ DataSnapshot .
toJSON() تقوم بإرجاع تمثيل JSON قابل للتسلسل لهذا الكائن. تمثيل JSON قابل للتسلسل لهذا الكائن.
فال () يستخرج قيمة JavaScript من DataSnapshot . اعتمادًا على البيانات الموجودة في DataSnapshot ، قد يُرجع التابع val() ‎ نوعًا عدديًا (سلسلة أو رقمًا أو منطقيًا)، أو مصفوفة، أو كائنًا. قد يُرجع أيضًا null ، مما يشير إلى أن DataSnapshot فارغ (لا يحتوي على بيانات). محتويات اللقطة كقيمة JavaScript (Object أو Array أو string أو number أو boolean أو null ).

قاعدة بيانات.DataSnapshot.(منشئ)

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

إمضاء:

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

حدود

معامل يكتب وصف
بيانات أي
طريق خيط
برنامج برنامج
مثال خيط

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;

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

يحصل على DataSnapshot للموقع على المسار النسبي المحدد.

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

إمضاء:

child(childPath: string): DataSnapshot;

حدود

معامل يكتب وصف
ChildPath خيط

عائدات:

لقطة بيانات

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

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

true إذا كانت DataSnapshot تحتوي على أي بيانات؛ وإلا فهو false .

إمضاء:

exists(): boolean;

عائدات:

منطقية

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

تصدير محتويات DataSnapshot بالكامل ككائن JavaScript.

محتويات DataSnapshot كقيمة JavaScript (Object أو Array أو string أو number أو boolean أو null ).

إمضاء:

exportVal(): any;

عائدات:

أي

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

تعداد DataSnapshot من عناصر الأطفال.

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

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

إمضاء:

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

حدود

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

عائدات:

منطقية

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

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

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

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

إمضاء:

getPriority(): string | number | null;

عائدات:

سلسلة | رقم | باطل

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

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

إمضاء:

hasChild(childPath: string): boolean;

حدود

معامل يكتب وصف
ChildPath خيط

عائدات:

منطقية

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

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

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

true إذا كانت هذه اللقطة بها أي أطفال؛ آخر false .

إمضاء:

hasChildren(): boolean;

عائدات:

منطقية

dataSnapshot.numChildren()

إرجاع عدد الخصائص الفرعية لـ DataSnapshot هذه .

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

إمضاء:

numChildren(): number;

عائدات:

رقم

dataSnapshot.toJSON()

تقوم بإرجاع تمثيل JSON قابل للتسلسل لهذا الكائن.

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

إمضاء:

toJSON(): Record<string, unknown>;

عائدات:

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

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

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

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

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

إمضاء:

val(): any;

عائدات:

أي