@firebase/firestore/lite

المهام

وظيفة وصف
وظيفة (التطبيق، ...)
احصل على فايرستور (التطبيق) إرجاع مثيل Firestore الافتراضي الحالي المرتبط بـ FirebaseApp المقدم . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.
getFirestore (التطبيق، معرف قاعدة البيانات) (إصدار تجريبي) يُرجع مثيل Firestore الحالي المرتبط بتطبيق FirebaseApp المقدم . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.
تهيئةFirestore (التطبيق، الإعدادات) تهيئة مثيل جديد لـ Cloud Firestore بالإعدادات المتوفرة. لا يمكن استدعاؤها إلا قبل أي وظائف أخرى، بما في ذلك getFirestore() . إذا كانت الإعدادات المخصصة فارغة، فإن هذه الوظيفة تعادل استدعاء getFirestore() .
تهيئةFirestore (التطبيق، الإعدادات، معرف قاعدة البيانات) (تجريبي) تهيئة مثيل جديد لـ Cloud Firestore بالإعدادات المتوفرة. لا يمكن استدعاؤها إلا قبل أي وظائف أخرى، بما في ذلك getFirestore() . إذا كانت الإعدادات المخصصة فارغة، فإن هذه الوظيفة تعادل استدعاء getFirestore() .
وظيفة (فيرستور، ...)
المجموعة (firestore، path، pathSegments) يحصل على مثيل CollectionReference الذي يشير إلى المجموعة في المسار المطلق المحدد.
مجموعة المجموعة (متجر النار، معرف المجموعة) يقوم بإنشاء وإرجاع نسخة Query جديدة تتضمن كافة المستندات الموجودة في قاعدة البيانات والمضمنة في مجموعة أو مجموعة فرعية باستخدام collectionId المحدد.
ConnectFirestoreEmulator (firestore، host، port، options) قم بتعديل هذا المثيل للتواصل مع محاكي Cloud Firestore. ملاحظة: يجب استدعاء هذا قبل استخدام هذا المثيل لإجراء أية عمليات.
مستند (firestore، path، pathSegments) الحصول على مثيل DocumentReference الذي يشير إلى المستند الموجود في المسار المطلق المحدد.
تشغيل المعاملات (firestore، updateFunction، options) ينفذ updateFunction المحددة ثم يحاول تنفيذ التغييرات المطبقة داخل المعاملة. إذا تغير أي مستند تمت قراءته خلال المعاملة، فسيقوم Cloud Firestore بإعادة محاولة updateFunction . إذا فشل في الالتزام بعد 5 محاولات، فستفشل المعاملة. الحد الأقصى لعدد عمليات الكتابة المسموح بها في معاملة واحدة هو 500.
إنهاء (مخزن الإطفاء) ينهي مثيل Firestore المقدم. بعد استدعاء terminate() يمكن فقط استخدام وظائف clearIndexedDbPersistence() . ستؤدي أي وظيفة أخرى إلى ظهور FirestoreError . لا يؤدي الإنهاء إلى إلغاء أي عمليات كتابة معلقة، ولن يتم حل أي وعود تنتظر الرد من الخادم. لإعادة التشغيل بعد الإنهاء، قم بإنشاء مثيل جديد لـ Firestore باستخدام getFirestore() . ملاحظة: في الظروف العادية، لا يلزم استدعاء الدالة terminate() ‎. تكون هذه الوظيفة مفيدة فقط عندما تريد إجبار هذا المثيل على تحرير جميع موارده أو بالاشتراك مع ClearIndexedDbPersistence() لضمان تدمير كل الحالة المحلية بين عمليات التشغيل الاختبارية.
WriteBatch (متجر النار) ينشئ دفعة كتابة، تُستخدم لتنفيذ عمليات كتابة متعددة كعملية ذرية واحدة. الحد الأقصى لعدد عمليات الكتابة المسموح بها في WriteBatch واحد هو 500. لن تنعكس نتيجة عمليات الكتابة هذه إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، تفشل الكتابة. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
وظيفة()
عدد() قم بإنشاء كائن AggregateField الذي يمكن استخدامه لحساب عدد المستندات في مجموعة نتائج الاستعلام.
حذف الحقل () إرجاع حارس للاستخدام مع updateDoc() أو setDoc() مع {merge: true} لوضع علامة على الحقل للحذف.
معرف الوثيقة () تقوم بإرجاع FieldPath خاص للإشارة إلى معرف المستند. يمكن استخدامه في الاستعلامات للفرز أو التصفية حسب معرف المستند.
getFirestore() إرجاع مثيل Firestore الافتراضي الحالي المرتبط بـ FirebaseApp الافتراضي . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.
الطابع الزمني للخادم () إرجاع الحارس المستخدم مع setDoc() أو updateDoc() لتضمين الطابع الزمني الذي أنشأه الخادم في البيانات المكتوبة.
الوظيفة (معرف قاعدة البيانات، ...)
getFirestore(معرف قاعدة البيانات) (تجريبي) يُرجع مثيل Firestore الحالي المرتبط بتطبيق FirebaseApp الافتراضي . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.
الوظيفة (العناصر، ...)
إزالة المصفوفة (العناصر) تُرجع قيمة خاصة يمكن استخدامها مع setDoc() أو تخبر الخادم بإزالة العناصر المحددة من أي قيمة مصفوفة موجودة بالفعل على الخادم. ستتم إزالة كافة مثيلات كل عنصر محدد من المصفوفة. إذا لم يكن الحقل الذي يتم تعديله مصفوفة بالفعل، فسيتم استبداله بمصفوفة فارغة.
المصفوفة (العناصر) تُرجع قيمة خاصة يمكن استخدامها مع setDoc() أو updateDoc() والتي تخبر الخادم بدمج العناصر المحددة مع أي قيمة مصفوفة موجودة بالفعل على الخادم. ستتم إضافة كل عنصر محدد غير موجود بالفعل في المصفوفة إلى النهاية. إذا لم يكن الحقل الذي يتم تعديله مصفوفة بالفعل، فسيتم استبداله بمصفوفة تحتوي على العناصر المحددة بالضبط.
وظيفة (المجال، ...)
المتوسط ​​(الحقل) قم بإنشاء كائن AggregateField الذي يمكن استخدامه لحساب متوسط ​​حقل محدد عبر نطاق من المستندات في مجموعة نتائج الاستعلام.
مجموع (حقل) قم بإنشاء كائن AggregateField الذي يمكن استخدامه لحساب مجموع حقل محدد عبر نطاق من المستندات في مجموعة نتائج الاستعلام.
وظيفة (مسار الحقل، ...)
ترتيب حسب (fieldPath، DirectionsStr) ينشئ QueryOrderByConstraint الذي يقوم بفرز نتيجة الاستعلام حسب الحقل المحدد، اختياريًا بترتيب تنازلي بدلاً من تصاعدي. ملاحظة: المستندات التي لا تحتوي على الحقل المحدد لن تكون موجودة في نتيجة الاستعلام.
حيث (fieldPath، opStr، القيمة) ينشئ QueryFieldFilterConstraint الذي يفرض أن المستندات يجب أن تحتوي على الحقل المحدد وأن القيمة يجب أن تستوفي قيد العلاقة المقدم.
وظيفة (القيم الميدانية، ...)
endAt(fieldValues) ينشئ QueryEndAtConstraint الذي يعدل مجموعة النتائج لتنتهي عند الحقول المتوفرة بالنسبة لترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقول مع ترتيب الترتيب حسب عبارات الاستعلام.
endBefore(fieldValues) ينشئ QueryEndAtConstraint الذي يعدل مجموعة النتائج لتنتهي قبل الحقول المتوفرة بالنسبة لترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقول مع ترتيب الترتيب حسب عبارات الاستعلام.
ابدأ بعد (قيم الحقل) ينشئ QueryStartAtConstraint الذي يعدل مجموعة النتائج لتبدأ بعد الحقول المتوفرة بالنسبة لترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقول مع ترتيب الترتيب حسب عبارات الاستعلام.
البدء عند (قيم الحقل) ينشئ QueryStartAtConstraint الذي يعدل مجموعة النتائج للبدء في الحقول المتوفرة المتعلقة بترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقول مع ترتيب الترتيب حسب عبارات الاستعلام.
الدالة (يسار،...)
مجاميع الحقل يساوي (يسار، يمين) يقارن حقلين "AggregateField". "حالات المساواة.
مجاميعQuerySnapshotEqual (يسار، يمين) يقارن بين مثيلين AggregateQuerySnapshot لتحقيق المساواة. يعتبر مثيلا AggregateQuerySnapshot "متساويين" إذا كان لديهما استعلامات أساسية تقارن البيانات المتساوية والبيانات نفسها.
استعلام متساوي (يسار، يمين) يُرجع صحيحًا إذا كانت الاستعلامات المقدمة تشير إلى نفس المجموعة وتطبق نفس القيود.
refEqual (يسار، يمين) يُرجع صحيحًا إذا كانت المراجع المقدمة متساوية.
لقطة متساوية (يسار، يمين) يُرجع صحيحًا إذا كانت اللقطات المقدمة متساوية.
وظيفة (الحد، ...)
الحد (الحد) يقوم بإنشاء QueryLimitConstraint الذي يقوم بإرجاع المستندات المطابقة الأولى فقط.
ليميتتولاست(الحد) يقوم بإنشاء QueryLimitConstraint الذي يقوم بإرجاع المستندات المطابقة الأخيرة فقط. يجب عليك تحديد عبارة orderBy واحدة على الأقل لاستعلامات limitToLast ، وإلا فسيتم طرح استثناء أثناء التنفيذ.
وظيفة (مستوى السجل، ...)
setLogLevel(مستوى السجل) يضبط إسهاب سجلات Cloud Firestore (التصحيح أو الخطأ أو الصمت).
وظيفة (ن، ...)
زيادة (ن) تُرجع قيمة خاصة يمكن استخدامها مع setDoc() أو updateDoc() والتي تخبر الخادم بزيادة القيمة الحالية للحقل بالقيمة المحددة. إذا كان المعامل أو قيمة الحقل الحالية تستخدم دقة الفاصلة العائمة، فإن جميع العمليات الحسابية تتبع دلالات IEEE 754. إذا كانت كلتا القيمتين أعدادًا صحيحة، فإن القيم الموجودة خارج نطاق الأرقام الآمنة لجافا سكريبت (من Number.MIN_SAFE_INTEGER إلى Number.MAX_SAFE_INTEGER ) تخضع أيضًا لفقدان الدقة. علاوة على ذلك، بمجرد معالجتها بواسطة الواجهة الخلفية لـ Firestore، يتم تحديد جميع عمليات الأعداد الصحيحة بين -2^63 و2^63-1. إذا لم تكن قيمة الحقل الحالية من النوع number ، أو إذا لم يكن الحقل موجودًا بعد، فسيقوم التحويل بتعيين الحقل إلى القيمة المحددة.
وظيفة (الاستعلام، ...)
getAggregate(استعلام، تجميعالمواصفات) لحساب التجميعات المحددة على المستندات الموجودة في مجموعة النتائج للاستعلام المحدد دون تنزيل المستندات فعليًا. يعتبر استخدام هذه الوظيفة لإجراء عمليات التجميع فعالاً لأنه يتم تنزيل قيم التجميع النهائية فقط، وليس بيانات المستندات. يمكن لهذه الوظيفة إجراء مجموعات من المستندات في الحالات التي تكون فيها مجموعة النتائج كبيرة بشكل يمنع تنزيلها بالكامل (آلاف المستندات).
الحصول على الكونت (استعلام) حساب عدد المستندات في مجموعة النتائج للاستعلام المحدد دون تنزيل المستندات فعليًا. يعتبر استخدام هذه الوظيفة لحساب عدد المستندات أمرًا فعالاً لأنه يتم تنزيل العدد النهائي فقط، وليس بيانات المستندات. يمكن لهذه الوظيفة حساب المستندات في الحالات التي تكون فيها مجموعة النتائج كبيرة بشكل يمنع تنزيلها بالكامل (آلاف المستندات).
الحصول على المستندات (الاستعلام) ينفذ الاستعلام ويعيد النتائج في صورة QuerySnapshot . يتم تنفيذ كافة الاستعلامات مباشرة بواسطة الخادم، حتى لو تم تنفيذ الاستعلام مسبقًا. تنعكس التعديلات الأخيرة فقط في النتائج المستردة إذا تم تطبيقها بالفعل بواسطة الواجهة الخلفية. إذا كان العميل غير متصل، تفشل العملية. لرؤية النتائج المخزنة مؤقتًا مسبقًا والتعديلات المحلية، استخدم Firestore SDK الكامل.
الاستعلام (الاستعلام، عامل التصفية المركب، الاستعلام عن القيود) ينشئ مثيلًا جديدًا غير قابل للتغيير للاستعلام يتم توسيعه ليشمل أيضًا قيود استعلام إضافية.
الاستعلام (الاستعلام، الاستعلام القيود) ينشئ مثيلًا جديدًا غير قابل للتغيير للاستعلام يتم توسيعه ليشمل أيضًا قيود استعلام إضافية.
وظيفة (الاستعلام، ...)
و(قيود الاستعلام) يقوم بإنشاء QueryCompositeFilterConstraint جديد وهو عبارة عن اقتران لقيود عامل التصفية المحددة. يتضمن مرشح الاقتران مستندًا إذا كان يلبي جميع عوامل التصفية المحددة.
أو (قيود الاستعلام) يقوم بإنشاء QueryCompositeFilterConstraint جديد وهو عبارة عن انفصال عن قيود عامل التصفية المحددة. يشتمل مرشح الانفصال على مستند إذا كان يلبي أيًا من المرشحات المحددة.
وظيفة (مرجع، ...)
addDoc(مرجع، بيانات) أضف مستندًا جديدًا إلى CollectionReference المحدد بالبيانات المقدمة، وقم بتعيين معرف المستند إليه تلقائيًا. لن تنعكس نتيجة هذه الكتابة إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، تفشل الكتابة. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
المجموعة (المرجع، المسار، شرائح المسار) الحصول على مثيل CollectionReference الذي يشير إلى مجموعة فرعية من reference في المسار النسبي المحدد.
المجموعة (المرجع، المسار، شرائح المسار) الحصول على مثيل CollectionReference الذي يشير إلى مجموعة فرعية من reference في المسار النسبي المحدد.
حذف المستند (المرجع) يحذف المستند المشار إليه بواسطة DocumentReference المحدد. لن ينعكس الحذف إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، تفشل عملية الحذف. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
مستند (مرجع، مسار، أجزاء المسار) الحصول على مثيل DocumentReference الذي يشير إلى مستند ضمن reference في المسار النسبي المحدد. إذا لم يتم تحديد أي مسار، فسيتم استخدام معرف فريد يتم إنشاؤه تلقائيًا لـ DocumentReference الذي تم إرجاعه.
مستند (مرجع، مسار، أجزاء المسار) الحصول على مثيل DocumentReference الذي يشير إلى مستند ضمن reference في المسار النسبي المحدد.
الحصول على الوثيقة (المرجع) يقرأ المستند المشار إليه بواسطة مرجع المستند المحدد. يتم جلب جميع المستندات مباشرة من الخادم، حتى لو تمت قراءة المستند أو تعديله مسبقًا. تنعكس التعديلات الأخيرة فقط في DocumentSnapshot المسترجعة إذا تم تطبيقها بالفعل بواسطة الواجهة الخلفية. إذا كان العميل غير متصل، تفشل القراءة. إذا كنت ترغب في استخدام التخزين المؤقت أو الاطلاع على التعديلات المحلية، فيرجى استخدام Firestore SDK الكامل.
setDoc(مرجع، بيانات) يكتب إلى المستند المشار إليه بواسطة DocumentReference المحدد. إذا لم يكن المستند موجودًا بعد، فسيتم إنشاؤه. لن تنعكس نتيجة هذه الكتابة إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، تفشل الكتابة. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
setDoc(مرجع، بيانات، خيارات) يكتب إلى المستند المشار إليه بواسطة DocumentReference المحدد. إذا لم يكن المستند موجودًا بعد، فسيتم إنشاؤه. إذا قمت بتوفير merge أو mergeFields ، فيمكن دمج البيانات المقدمة في مستند موجود. لن تنعكس نتيجة هذه الكتابة إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، تفشل الكتابة. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
updateDoc(مرجع، بيانات) يقوم بتحديث الحقول في المستند المشار إليه بواسطة DocumentReference المحدد. سوف يفشل التحديث إذا تم تطبيقه على مستند غير موجود. لن تنعكس نتيجة هذا التحديث إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، يفشل التحديث. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
UpdateDoc(مرجع، حقل، قيمة، moreFieldsAndValues) تحديثات الحقول في المستند المشار إليه بواسطة DocumentReference المحدد. سيفشل التحديث إذا تم تطبيقه على مستند غير موجود. يمكن تحديث الحقول المتداخلة من خلال توفير سلاسل مسار حقل مفصولة بنقاط أو من خلال توفير كائنات FieldPath . لن تنعكس نتيجة هذا التحديث إلا في عمليات قراءة المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل، يفشل التحديث. إذا كنت ترغب في رؤية التعديلات المحلية أو عمليات الكتابة المؤقتة حتى يصبح العميل متصلاً بالإنترنت، فاستخدم Firestore SDK الكامل.
وظيفة (لقطة، ...)
النهاية في (لقطة) ينشئ QueryEndAtConstraint الذي يعدل مجموعة النتائج لتنتهي عند المستند المقدم (شاملاً). موضع النهاية يتعلق بترتيب الاستعلام. يجب أن يحتوي المستند على كافة الحقول المتوفرة في ترتيب الاستعلام.
النهاية قبل (لقطة) ينشئ QueryEndAtConstraint الذي يعدل مجموعة النتائج لتنتهي قبل المستند المقدم (حصريًا). موضع النهاية يتعلق بترتيب الاستعلام. يجب أن يحتوي المستند على كافة الحقول المتوفرة في ترتيب الاستعلام.
ابدأ بعد (لقطة) ينشئ QueryStartAtConstraint الذي يعدل مجموعة النتائج للبدء بعد المستند المقدم (حصريًا). موضع البداية يتعلق بترتيب الاستعلام. يجب أن يحتوي المستند على كافة الحقول المتوفرة في ترتيب الاستعلام.
البداية في (لقطة) ينشئ QueryStartAtConstraint الذي يعدل مجموعة النتائج للبدء في المستند المقدم (ضمناً). موضع البداية يتعلق بترتيب الاستعلام. يجب أن يحتوي المستند على كافة الحقول المتوفرة في orderBy هذا الاستعلام.

الطبقات

فصل وصف
AggregateField يمثل تجميعًا يمكن تنفيذه بواسطة Firestore.
AggregateQuerySnapshot نتائج تنفيذ استعلام التجميع.
بايت كائن غير قابل للتغيير يمثل مجموعة من البايتات.
مرجع المجموعة يمكن استخدام كائن CollectionReference لإضافة المستندات والحصول على مراجع المستندات والاستعلام عن المستندات (باستخدام query() ).
وثيقة مرجعية يشير DocumentReference إلى موقع المستند في قاعدة بيانات Firestore ويمكن استخدامه لكتابة الموقع أو قراءته أو الاستماع إليه. قد يكون المستند الموجود في الموقع المشار إليه موجودًا أو غير موجود.
DocumentSnapshot يحتوي DocumentSnapshot على البيانات المقروءة من مستند موجود في قاعدة بيانات Firestore. يمكن استخراج البيانات باستخدام .data() أو .get(<field>) للحصول على حقل معين. بالنسبة إلى DocumentSnapshot التي تشير إلى مستند غير موجود، فإن أي وصول للبيانات سيرجع "غير محدد". يمكنك استخدام الطريقة exists() للتحقق بشكل صريح من وجود المستند.
مسار الحقل يشير FieldPath إلى حقل في المستند. قد يتكون المسار من اسم حقل واحد (يشير إلى حقل المستوى الأعلى في المستند)، أو قائمة بأسماء الحقول (يشير إلى حقل متداخل في المستند). قم بإنشاء FieldPath من خلال توفير أسماء الحقول. إذا تم توفير أكثر من اسم حقل واحد، فسيشير المسار إلى حقل متداخل في المستند.
قيمة الحقل القيم الحارسة التي يمكن استخدامها عند كتابة حقول المستند باستخدام set() أو update() .
فايرستور واجهة خدمة Cloud Firestore. لا تستدعي هذا المنشئ مباشرة. بدلاً من ذلك، استخدم getFirestore() .
FirestoreError خطأ تم إرجاعه بواسطة عملية Firestore.
نقطة جغرافية كائن ثابت يمثل موقعًا جغرافيًا في Firestore. يتم تمثيل الموقع كزوج من خطوط الطول والعرض. تقع قيم خط العرض في نطاق [-90، 90]. تقع قيم خط الطول في نطاق [-180، 180].
استفسار يشير Query إلى استعلام يمكنك قراءته أو الاستماع إليه. يمكنك أيضًا إنشاء كائنات Query محسنة عن طريق إضافة المرشحات والترتيب.
QueryCompositeFilterConstraint يتم استخدام QueryCompositeFilterConstraint لتضييق نطاق مجموعة المستندات التي يتم إرجاعها بواسطة استعلام Firestore عن طريق إجراء عملية OR أو AND المنطقية لـ QueryFieldFilterConstraint المتعددة s أو QueryCompositeFilterConstraint س. يتم إنشاء QueryCompositeFilterConstraint عن طريق استدعاء or() أو and() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryCompositeFilterConstraint .
QueryConstraint يتم استخدام QueryConstraint لتضييق نطاق مجموعة المستندات التي يتم إرجاعها بواسطة استعلام Firestore. يتم إنشاء QueryConstraint عن طريق استدعاء Where() ، ترتيب حسب() ، تبدأ في() ، ابدأ بعد () ، النهاية قبل () ، يغلق عند مستوى() ، حد() و LimitToLast() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryConstraint هذا.
QueryDocumentSnapshot يحتوي QueryDocumentSnapshot على بيانات تمت قراءتها من مستند في قاعدة بيانات Firestore كجزء من الاستعلام. الوثيقة مضمونة الوجود ويمكن استخراج بياناتها باستخدام .data() أو .get(<field>) للحصول على حقل معين. يقدم QueryDocumentSnapshot نفس سطح واجهة برمجة التطبيقات (API) الذي يوفره DocumentSnapshot . نظرًا لأن نتائج الاستعلام تحتوي على مستندات موجودة فقط، فستكون الخاصية exists دائمًا صحيحة ولن تُرجع data() أبدًا القيمة "غير محددة".
QueryEndAtConstraint يتم استخدام QueryEndAtConstraint لاستبعاد المستندات من نهاية مجموعة النتائج التي يتم إرجاعها بواسطة استعلام Firestore. يتم إنشاء QueryEndAtConstraint عن طريق استدعاء endAt() أو endBefore() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryEndAtConstraint هذا.
QueryFieldFilterConstraint يتم استخدام QueryFieldFilterConstraint لتضييق نطاق مجموعة المستندات التي يتم إرجاعها بواسطة استعلام Firestore عن طريق التصفية في حقل مستند واحد أو أكثر. يتم إنشاء QueryFieldFilterConstraint عن طريق استدعاء Where() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryFieldFilterConstraint هذا.
QueryLimitConstraint يتم استخدام QueryLimitConstraint للحد من عدد المستندات التي يتم إرجاعها بواسطة استعلام Firestore. يتم إنشاء QueryLimitConstraint عن طريق استدعاء Limit() أو LimitToLast() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryLimitConstraint هذا.
الاستعلام حسب القيد يتم استخدام QueryOrderByConstraint لفرز مجموعة المستندات التي يتم إرجاعها بواسطة استعلام Firestore. يتم إنشاء QueryOrderByConstraint عن طريق استدعاء orderBy() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryOrderByConstraint هذا. ملاحظة: المستندات التي لا تحتوي على حقل orderBy لن تكون موجودة في نتيجة الاستعلام.
QuerySnapshot يحتوي QuerySnapshot على صفر أو أكثر من كائنات DocumentSnapshot التي تمثل نتائج الاستعلام. يمكن الوصول إلى المستندات كمصفوفة عبر خاصية docs أو تعدادها باستخدام طريقة forEach . يمكن تحديد عدد المستندات من خلال الخصائص empty size .
QueryStartAtConstraint يتم استخدام QueryStartAtConstraint لاستبعاد المستندات من بداية مجموعة النتائج التي يتم إرجاعها بواسطة استعلام Firestore. يتم إنشاء QueryStartAtConstraint عن طريق استدعاء startAt() أو startAfter() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryStartAtConstraint هذا.
الطابع الزمني يمثل Timestamp نقطة زمنية مستقلة عن أي منطقة زمنية أو تقويم، ويتم تمثيلها بالثواني وكسور الثواني بدقة النانو ثانية بتوقيت UTC Epoch. تم ترميزه باستخدام التقويم الجريجوري Proleptic الذي يمتد التقويم الغريغوري إلى الوراء إلى السنة الأولى. يتم ترميزها على افتراض أن طول كل الدقائق هو 60 ثانية، أي أن الثواني الكبيسة "يتم تلطيخها" بحيث لا تكون هناك حاجة إلى جدول ثانية كبيسة للتفسير. النطاق من 0001-01-01T00:00:00Z إلى 9999-12-31T23:59:59.999999999Z. للحصول على أمثلة ومزيد من المواصفات، راجع تعريف الطابع الزمني .
عملية إشارة إلى الصفقة. يوفر كائن Transaction الذي تم تمريره إلى updateFunction الخاصة بالمعاملة طرقًا لقراءة البيانات وكتابتها في سياق المعاملة. راجع runTransaction() .
WriteBatch دفعة كتابة، تُستخدم لإجراء عمليات كتابة متعددة كوحدة ذرية واحدة. يمكن الحصول على كائن WriteBatch عن طريق استدعاء writeBatch() . يوفر طرقًا لإضافة عمليات الكتابة إلى مجموعة الكتابة. لن يتم الالتزام بأي من عمليات الكتابة (أو تكون مرئية محليًا) حتى يتم استدعاء WriteBatch.commit() .

واجهات

واجهه المستخدم وصف
المواصفات الإجمالية يحدد مجموعة من المجموعات والأسماء المستعارة الخاصة بها.
DocumentData بيانات المستند (للاستخدام مع setDoc()) ) يتكون من الحقول المعينة للقيم.
FirestoreDataConverter المحول المستخدم بواسطة withConverter() لتحويل كائنات المستخدم من النوع AppModelType إلى بيانات Firestore من النوع DbModelType . يتيح لك استخدام المحول تحديد وسيطات النوع العامة عند تخزين الكائنات واستردادها من Firestore. في هذا السياق، يعد "AppModel" فئة يتم استخدامها في التطبيق لتجميع المعلومات والوظائف ذات الصلة معًا. يمكن لمثل هذه الفئة، على سبيل المثال، أن تحتوي على خصائص ذات أنواع بيانات معقدة ومتداخلة، وخصائص مستخدمة للحفظ، وخصائص الأنواع التي لا يدعمها Firestore (مثل symbol و bigint )، والوظائف المساعدة التي تنفذ عمليات مركبة. هذه الفئات ليست مناسبة و/أو من الممكن تخزينها في قاعدة بيانات Firestore. بدلاً من ذلك، يجب تحويل مثيلات هذه الفئات إلى "كائنات JavaScript قديمة عادية" (POJOs) ذات خصائص بدائية حصرية، ومن المحتمل أن تكون متداخلة داخل POJOs أو مصفوفات POJOs أخرى. في هذا السياق، يُشار إلى هذا النوع باسم "DbModel" وسيكون كائنًا مناسبًا للاستمرار في Firestore. للراحة، يمكن للتطبيقات تنفيذ FirestoreDataConverter وتسجيل المحول باستخدام كائنات Firestore، مثل DocumentReference أو Query ، لتحويل AppModel إلى DbModel تلقائيًا عند تخزينه في Firestore، وتحويل DbModel إلى AppModel عند الاسترداد من Firestore.
إعدادات يحدد التكوينات المخصصة لمثيل Cloud Firestore الخاص بك. يجب عليك تعيين هذه قبل استدعاء أي طرق أخرى.
خيارات المعاملة خيارات لتخصيص سلوك المعاملة.

اكتب الأسماء المستعارة

اكتب الاسم المستعار وصف
AddPrefixToKeys إرجاع خريطة جديدة حيث يكون كل مفتاح مسبوقًا بالمفتاح الخارجي الملحق بنقطة.
AggregateFieldType اتحاد جميع أنواع AggregateField التي يدعمها Firestore.
AggregateSpecData نوع يتم أخذ مفاتيحه من AggregateSpec ، وتكون قيمه نتيجة التجميع الذي يتم إجراؤه بواسطة AggregateField المقابل من مدخلات AggregateSpec .
نوع التجميع نوع الاتحاد الذي يمثل النوع الإجمالي المطلوب تنفيذه.
حقول تحديث الطفل مساعد لحساب الحقول المتداخلة لنوع معين T1. وهذا مطلوب لتوزيع أنواع الاتحاد مثل undefined | {...} (يحدث للدعائم الاختيارية) أو {a: A} | {b: B} . في حالة الاستخدام هذه، يتم استخدام V لتوزيع أنواع اتحاد T[K] على Record ، حيث يتم تقييم T[K] كتعبير ولا يتم توزيعه. راجع https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
FirestoreErrorCode مجموعة رموز حالة Firestore. الرموز هي نفسها التي كشفها gRPC هنا: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md القيم المحتملة: - "تم الإلغاء": تم إلغاء العملية (عادة بواسطة المتصل). - 'غير معروف': خطأ غير معروف أو خطأ من مجال خطأ مختلف. - "وسيطة غير صالحة": حدد العميل وسيطة غير صالحة. لاحظ أن هذا يختلف عن "الشرط المسبق الفاشل". تشير "الوسيطة غير الصالحة" إلى الوسائط التي تمثل مشكلة بغض النظر عن حالة النظام (على سبيل المثال، اسم حقل غير صالح). - "تم تجاوز الموعد النهائي": انتهى الموعد النهائي قبل أن تكتمل العملية. بالنسبة للعمليات التي تغير حالة النظام، قد يتم إرجاع هذا الخطأ حتى لو اكتملت العملية بنجاح. على سبيل المثال، قد يتم تأخير الاستجابة الناجحة من الخادم لفترة كافية حتى انتهاء الموعد النهائي. - "غير موجود": لم يتم العثور على بعض المستندات المطلوبة. - "موجود بالفعل": بعض المستندات التي حاولنا إنشاءها موجودة بالفعل. - "تم رفض الإذن": ليس لدى المتصل إذن بتنفيذ العملية المحددة. - "استنفاد الموارد": تم استنفاد بعض الموارد، ربما حصة لكل مستخدم، أو ربما نظام الملفات بأكمله غير متوفر في المساحة. - "فشل الشرط المسبق": تم رفض العملية لأن النظام ليس في الحالة المطلوبة لتنفيذ العملية. - 'تم إحباط': تم إحباط العملية، عادةً بسبب مشكلة في التزامن مثل إحباط المعاملة، وما إلى ذلك. - 'خارج النطاق': تمت محاولة العملية بعد النطاق الصالح. - "غير منفذة": لم يتم تنفيذ العملية أو أنها غير مدعومة/ممكّنة. - 'داخلي': أخطاء داخلية. يعني أن بعض الثوابت المتوقعة من النظام الأساسي قد تم كسرها. إذا رأيت أحد هذه الأخطاء، فهذا يعني أن هناك شيئًا مكسورًا للغاية. - "غير متاح": الخدمة غير متاحة حاليًا. من المرجح أن تكون هذه حالة عابرة ويمكن تصحيحها عن طريق إعادة المحاولة مع التراجع. - "فقدان البيانات": فقدان البيانات أو تلفها بشكل غير قابل للاسترداد. - "غير مصادق عليه": لا يحتوي الطلب على بيانات اعتماد مصادقة صالحة للعملية.
NestedUpdateFields لكل حقل (على سبيل المثال "شريط")، ابحث عن جميع المفاتيح المتداخلة (على سبيل المثال { 'bar.baz': T1، 'bar.qux': T2 } ). قم بتقاطعها معًا لإنشاء خريطة واحدة تحتوي على جميع المفاتيح الممكنة والتي تم تحديدها جميعًا على أنها اختيارية
OrderByDirection يتم تحديد اتجاه جملة orderBy() كـ "تنازلي" أو "تصاعدي" (تنازلي أو تصاعدي).
PartialWithFieldValue يشبه Partial<T> الخاص بـ Typescript، ولكنه يسمح بحذف الحقول المتداخلة وتمرير FieldValues ​​كقيم خصائص.
بدائية أنواع بدائية.
QueryConstraintType يصف قيود الاستعلام المختلفة المتوفرة في SDK هذا.
QueryFilterConstraint QueryFilterConstraint هو نوع اتحاد مساعد يمثل QueryFieldFilterConstraint و QueryCompositeFilterConstraint .
QueryNonFilterConstraint QueryNonFilterConstraint هو نوع موحد مساعد يمثل QueryConstraints التي يتم استخدامها لتضييق أو ترتيب مجموعة المستندات، ولكن لا يتم تصفيتها بشكل صريح في حقل المستند. يتم إنشاء QueryNonFilterConstraint عن طريق استدعاء orderBy() ، تبدأ في() ، ابدأ بعد () ، النهاية قبل () ، يغلق عند مستوى() أو Limit() أو LimitToLast() ويمكن بعد ذلك تمريرها إلى query() لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryConstraint .
خيارات الضبط كائن خيارات يقوم بتكوين سلوك setDoc() ، والمكالمات. يمكن تكوين هذه الاستدعاءات لإجراء عمليات دمج دقيقة بدلاً من الكتابة فوق المستندات المستهدفة بالكامل من خلال توفير SetOptions مع merge: true .
UnionToIntersection نظرا لنوع الاتحاد U = T1 | T2 | ... ، تُرجع نوعًا متقاطعًا (T1 & T2 & ...) . يستخدم الأنواع الشرطية التوزيعية والاستدلال من الأنواع الشرطية. يعمل هذا لأن المرشحين المتعددين لنفس متغير النوع في المواضع المتناقضة يتسببون في استنتاج نوع التقاطع. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection -يكتب
تحديث البيانات تحديث البيانات (للاستخدام مع updateDoc()) ) التي تتكون من مسارات الحقول (على سبيل المثال 'foo' أو 'foo.baz') المعينة إلى القيم. تشير الحقول التي تحتوي على نقاط إلى الحقول المتداخلة داخل المستند. يمكن تمرير FieldValues ​​كقيم خاصية.
WhereFilterOp يتم تحديد شروط التصفية في جملة Where() باستخدام السلاسل '&lt;'، '&lt;='، '=='، '!='، '&gt;='، '&gt;'، 'array-contains' و"في"، و"المصفوفة تحتوي على أي"، و"ليس في".
مع قيمة الحقل يسمح بتمرير FieldValues ​​كقيمة خاصية مع الحفاظ على أمان النوع.

وظيفة (التطبيق، ...)

احصل على فايرستور (التطبيق)

إرجاع مثيل Firestore الافتراضي الحالي المرتبط بـ FirebaseApp المقدم . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.

إمضاء:

export declare function getFirestore(app: FirebaseApp): Firestore;

حدود

معامل يكتب وصف
برنامج FirebaseApp مثيل FirebaseApp الذي يرتبط به مثيل Firestore الذي تم إرجاعه.

عائدات:

فايرستور

مثيل Firestore للتطبيق المقدم.

getFirestore (التطبيق، معرف قاعدة البيانات)

يتم توفير واجهة برمجة التطبيقات هذه كمعاينة للمطورين وقد تتغير بناءً على التعليقات التي نتلقاها. لا تستخدم واجهة برمجة التطبيقات هذه في بيئة الإنتاج.

إرجاع مثيل Firestore الحالي المرتبط بـ FirebaseApp المقدم . في حالة عدم وجود مثيل، قم بتهيئة مثيل جديد بالإعدادات الافتراضية.

إمضاء:

export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;

حدود

معامل يكتب وصف
برنامج FirebaseApp مثيل FirebaseApp الذي يرتبط به مثيل Firestore الذي تم إرجاعه.
معرف قاعدة البيانات خيط اسم قاعدة البيانات.

عائدات:

فايرستور

مثيل Firestore للتطبيق المقدم.

تهيئةFirestore (التطبيق، الإعدادات)

تهيئة مثيل جديد لـ Cloud Firestore بالإعدادات المتوفرة. لا يمكن استدعاؤها إلا قبل أي وظائف أخرى، بما في ذلك getFirestore() . إذا كانت الإعدادات المخصصة فارغة، فإن هذه الوظيفة تعادل استدعاء getFirestore() .

إمضاء:

export declare function initializeFirestore(app: FirebaseApp, settings: Settings): Firestore;

حدود

معامل يكتب وصف
برنامج FirebaseApp FirebaseApp الذي سيتم ربط مثيل Firestore به.
إعدادات إعدادات كائن إعدادات لتكوين مثيل Firestore .

عائدات:

فايرستور

مثيل Firestore تمت تهيئته حديثًا.

تهيئةFirestore (التطبيق، الإعدادات، معرف قاعدة البيانات)

يتم توفير واجهة برمجة التطبيقات هذه كمعاينة للمطورين وقد تتغير بناءً على التعليقات التي نتلقاها. لا تستخدم واجهة برمجة التطبيقات هذه في بيئة الإنتاج.

تهيئة مثيل جديد لـ Cloud Firestore بالإعدادات المتوفرة. لا يمكن استدعاؤها إلا قبل أي وظائف أخرى، بما في ذلك getFirestore() . إذا كانت الإعدادات المخصصة فارغة، فإن هذه الوظيفة تعادل استدعاء getFirestore() .

إمضاء:

export declare function initializeFirestore(app: FirebaseApp, settings: Settings, databaseId?: string): Firestore;

حدود

معامل يكتب وصف
برنامج FirebaseApp FirebaseApp الذي سيتم ربط مثيل Firestore به.
إعدادات إعدادات كائن إعدادات لتكوين مثيل Firestore .
معرف قاعدة البيانات خيط اسم قاعدة البيانات.

عائدات:

فايرستور

مثيل Firestore تمت تهيئته حديثًا.

وظيفة (فيرستور، ...)

المجموعة (firestore، path، pathSegments)

يحصل على مثيل CollectionReference الذي يشير إلى المجموعة في المسار المطلق المحدد.

إمضاء:

export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
firestore فايرستور إشارة إلى مثيل Firestore الجذر.
طريق خيط مسار مفصول بشرطة مائلة إلى مجموعة.
pathSegments خيط[] مقاطع مسار إضافية سيتم تطبيقها بالنسبة إلى الوسيطة الأولى.

عائدات:

مرجع المجموعة < بيانات الوثيقة ، بيانات الوثيقة >

مثيل CollectionReference .

الاستثناءات

إذا كان المسار النهائي يحتوي على عدد زوجي من المقاطع ولا يشير إلى مجموعة.

مجموعة المجموعة (متجر النار، معرف المجموعة)

إنشاء وإرجاع مثيل Query جديد يتضمن جميع المستندات الموجودة في قاعدة البيانات المضمنة في مجموعة أو مجموعة فرعية باستخدام collectionId المحدد .

إمضاء:

export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
firestore فايرستور إشارة إلى مثيل الجذر Firestore .
CollectionId خيط يحدد المجموعات للاستعلام. سيتم تضمين كل مجموعة أو جمعية فرعية مع هذا المعرف كجزء آخر من مساره. لا يمكن أن تحتوي على مائلة.

عائدات:

استفسار < documentData ، documentData >

Query الذي تم إنشاؤه .

ConnectFirestoreemulator (Firestore ، مضيف ، منفذ ، خيارات)

قم بتعديل هذه الحالة للتواصل مع محاكي Firestore Cloud.

إمضاء:

export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
    mockUserToken?: EmulatorMockTokenOptions | string;
}): void;

حدود

معامل يكتب وصف
فايرستور فايرستور مثيل Firestore للتكوين للاتصال بالمحاكي.
يستضيف خيط مضيف المحاكي (على سبيل المثال: LocalHost).
ميناء رقم منفذ المحاكي (على سبيل المثال: 9000).
خيارات {mockusertoken؟: emulatormocktokenoptions | خيط؛ }

عائدات:

فارغ

DOC (Firestore ، Path ، PathSegments)

يحصل على مثيل DocumentReference الذي يشير إلى المستند في المسار المطلق المحدد.

إمضاء:

export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
فايرستور فايرستور إشارة إلى مثيل الجذر Firestore .
طريق خيط مسار مفصل للخلع إلى وثيقة.
المسارات خيط[] شرائح المسار الإضافية التي سيتم تطبيقها بالنسبة للحجة الأولى.

عائدات:

وثيقة مرجعية < documentData ، documentData >

مثيل DocumentReference .

الاستثناءات

إذا كان المسار النهائي يحتوي على عدد فردي من الأجزاء ولم يشير إلى وثيقة.

RunTransaction (Firestore ، UpdateFunction ، Options)

ينفذ updateFunction المحدد ثم يحاول ارتكاب التغييرات المطبقة في المعاملة. إذا تغيرت أي مستند في المعاملة ، فإن Cloud updateFunction . إذا فشلت في الالتزام بعد 5 محاولات ، فإن المعاملة تفشل.

الحد الأقصى لعدد الكتابة المسموح به في معاملة واحدة هو 500.

إمضاء:

export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;

حدود

معامل يكتب وصف
فايرستور فايرستور إشارة إلى قاعدة بيانات Firestore لتشغيل هذه المعاملة ضد.
updatefunction (المعاملة: المعاملة ) => الوعد <T> الوظيفة للتنفيذ في سياق المعاملة.
خيارات المعاملات كائن خيارات لتكوين أقصى عدد من المحاولات للالتزام.

عائدات:

الوعد <T>

إذا أكملت المعاملة بنجاح أو تم إحباطها بشكل صريح (أعاد updateFunction وعدًا فاشلاً) ، فإن الوعد الذي تم إرجاعه بواسطة updateFunction عاد هنا. خلاف ذلك ، إذا فشلت المعاملة ، يتم إرجاع الوعد المرفوض مع خطأ الفشل المقابل.

إنهاء (Firestore)

ينتهي مثيل Firestore المقدم.

بعد استدعاء terminate() فقط يمكن استخدام وظائف clearIndexedDbPersistence() . أي وظيفة أخرى سوف ترمي FirestoreError . لا يلغي الإنهاء أي كتابة معلقة ، ولن يتم حل أي وعود تنتظر استجابة من الخادم.

لإعادة التشغيل بعد الإنهاء ، قم بإنشاء مثيل جديد لـ Firestore مع GetFirestore () .

إمضاء:

export declare function terminate(firestore: Firestore): Promise<void>;

حدود

معامل يكتب وصف
فايرستور فايرستور مثال Firestore لإنهاء.

عائدات:

وعد<باطل>

Promise يتم حله عند إنهاء المثيل بنجاح.

WriteBatch (Firestore)

ينشئ مجموعة الكتابة ، تستخدم لأداء عمليات كتابة متعددة كعملية ذرية واحدة. الحد الأقصى لعدد الكتابة المسموح بها في كتاب واحد هو 500.

لن تنعكس نتيجة هذه الكتابة إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل ، فإن الكتابة تفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function writeBatch(firestore: Firestore): WriteBatch;

حدود

معامل يكتب وصف
فايرستور فايرستور

عائدات:

WriteBatch

WriteBatch التي يمكن استخدامها لتنفيذ العديد من الكتابة.

وظيفة()

عدد()

قم بإنشاء كائن AgegregateField يمكن استخدامه لحساب عدد المستندات في مجموعة النتائج من الاستعلام.

إمضاء:

export declare function count(): AggregateField<number>;

عائدات:

إطعام <رقم>

Deletefield ()

إرجاع Sentinel للاستخدام مع updatedoc () أو setDOC () مع {merge: true} لوضع علامة على حقل للحذف.

إمضاء:

export declare function deleteField(): FieldValue;

عائدات:

قيمة الحقل

documentId ()

إرجاع FieldPath حارس خاص للإشارة إلى معرف المستند. يمكن استخدامه في الاستعلامات لفرز أو تصفية بواسطة معرف المستند.

إمضاء:

export declare function documentId(): FieldPath;

عائدات:

ميدان

getFirestore ()

إرجاع مثيل Firestore الافتراضي الموجود المرتبط بـ FirebaseApp الافتراضي . في حالة عدم وجود مثيل ، قم بتهيئة مثيل جديد بإعدادات افتراضية.

إمضاء:

export declare function getFirestore(): Firestore;

عائدات:

فايرستور

مثيل Firestore للتطبيق المقدم.

servertimestamp ()

إرجاع Sentinel المستخدمة مع setDoc () أو updatedOC () لتضمين طابع زمني تم إنشاؤه بواسطة الخادم في البيانات المكتوبة.

إمضاء:

export declare function serverTimestamp(): FieldValue;

عائدات:

قيمة الحقل

وظيفة (databaseid ، ...)

getFirestore (databaseid)

يتم توفير واجهة برمجة التطبيقات هذه كمعاينة للمطورين وقد تتغير بناءً على التعليقات التي نتلقاها. لا تستخدم واجهة برمجة التطبيقات هذه في بيئة الإنتاج.

إرجاع مثيل Firestore الحالي المرتبط بـ FirebaseApps الافتراضي . في حالة عدم وجود مثيل ، قم بتهيئة مثيل جديد بإعدادات افتراضية.

إمضاء:

export declare function getFirestore(databaseId: string): Firestore;

حدود

معامل يكتب وصف
DatabaseId خيط اسم قاعدة البيانات.

عائدات:

فايرستور

مثيل Firestore للتطبيق المقدم.

وظيفة (عناصر ، ...)

arrayremove (عناصر)

إرجاع قيمة خاصة يمكن استخدامها مع setDoc () أو تخبر الخادم بإزالة العناصر المعطاة من أي قيمة صفيف موجودة بالفعل على الخادم. ستتم إزالة جميع حالات كل عنصر محدد من الصفيف. إذا لم يكن الحقل الذي يتم تعديله بالفعل صفيفًا ، فسيتم كتابة صفيف فارغ.

إمضاء:

export declare function arrayRemove(...elements: unknown[]): FieldValue;

حدود

معامل يكتب وصف
عناصر مجهول[] العناصر لإزالتها من الصفيف.

عائدات:

قيمة الحقل

حارس FieldValue للاستخدام في مكالمة إلى setDoc() أو updateDoc()

Arrayunion (عناصر)

إرجاع قيمة خاصة يمكن استخدامها مع setDoc () أو updatedOC () التي تخبر الخادم باتحاد العناصر المعطاة مع أي قيمة صفيف موجودة بالفعل على الخادم. سيتم إضافة كل عنصر محدد غير موجود بالفعل في الصفيف إلى النهاية. إذا لم يكن الحقل الذي يتم تعديله بالفعل صفيفًا ، فسيتم كتابة صفيف مع صفيف يحتوي على العناصر المحددة بالضبط.

إمضاء:

export declare function arrayUnion(...elements: unknown[]): FieldValue;

حدود

معامل يكتب وصف
عناصر مجهول[] العناصر إلى الاتحاد في الصفيف.

عائدات:

قيمة الحقل

حارس FieldValue للاستخدام في مكالمة إلى setDoc() أو updateDoc() .

وظيفة (الحقل ، ...)

المتوسط ​​(الحقل)

قم بإنشاء كائن FailgRegateField يمكن استخدامه لحساب متوسط ​​حقل محدد على نطاق من المستندات في مجموعة النتائج من الاستعلام.

إمضاء:

export declare function average(field: string | FieldPath): AggregateField<number | null>;

حدود

معامل يكتب وصف
مجال سلسلة | ميدان يحدد الحقل إلى المتوسط ​​عبر مجموعة النتائج.

عائدات:

إطعام <العدد | فارغ>

مجموع (حقل)

قم بإنشاء كائن AggregateField يمكن استخدامه لحساب مجموع الحقل المحدد على مجموعة من المستندات في مجموعة النتائج من الاستعلام.

إمضاء:

export declare function sum(field: string | FieldPath): AggregateField<number>;

حدود

معامل يكتب وصف
مجال سلسلة | ميدان يحدد الحقل لتجاوز مجموعة النتائج.

عائدات:

إطعام <رقم>

وظيفة (FieldPath ، ...)

ترتيب حسب (fieldPath، DirectionsStr)

يقوم بإنشاء QueryOrderByConstraint الذي يقوم بفرز نتيجة الاستعلام بواسطة الحقل المحدد ، اختياريًا بترتيب تنازلي بدلاً من الصعود.

إمضاء:

export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;

حدود

معامل يكتب وصف
ميدان سلسلة | ميدان الحقل لفرز بواسطة.
توجيهات Orderbydirection الاتجاه الاختياري للفرز بواسطة ("ASC" أو "DESC"). إذا لم يتم تحديده ، فسيصعد الطلب.

عائدات:

QueryOrderByConstraint

تم إنشاء QueryOrderByConstraint .

حيث (FieldPath ، Opstr ، Value)

ينشئ QueryFieldFilterConstraint الذي ينفذ أن المستندات يجب أن تحتوي على الحقل المحدد وأن القيمة يجب أن تفي بقيود العلاقة المقدمة.

إمضاء:

export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;

حدود

معامل يكتب وصف
ميدان سلسلة | ميدان الطريق للمقارنة
أوبستر WhateFilterop سلسلة التشغيل (على سبيل المثال "& lt ؛" ، "& lt ؛ =" ، "==" ، "& lt ؛" ، "& lt ؛ =" ، "! =").
قيمة مجهول قيمة المقارنة

عائدات:

QueryfieldFilterConstraint

تم إنشاء QueryFieldFilterConstraint .

وظيفة (القيم الحقل ، ...)

endat (القيم الميدانية)

ينشئ queryendatconstraint الذي يعدل النتيجة التي تم تعيينها في الحقول المقدمة بالنسبة إلى ترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقل مع ترتيب الطلب بواسطة بنود الاستعلام.

إمضاء:

export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;

حدود

معامل يكتب وصف
القيم الميدانية مجهول[] قيم الحقل لإنهاء هذا الاستعلام في ، من أجل ترتيب الاستعلام عن طريق.

عائدات:

Queryendatconstraint

queryendatconstraint لتمرير query()

endbefore (القيم الميدانية)

ينشئ queryendatconstraint الذي يعدل النتيجة التي تم تعيينها قبل أن تنتهي قبل الحقول المقدمة بالنسبة إلى ترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقل مع ترتيب الطلب بواسطة بنود الاستعلام.

إمضاء:

export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;

حدود

معامل يكتب وصف
القيم الميدانية مجهول[] قيم الحقل لإنهاء هذا الاستعلام من قبل ، من أجل ترتيب الاستعلام عن طريق.

عائدات:

Queryendatconstraint

queryendatconstraint لتمرير query()

ابدأ بعد (قيم الحقل)

ينشئ QueryStartAtconstraint الذي يعدل النتيجة التي تم تعيينها للبدء بعد الحقول المقدمة بالنسبة إلى ترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقل مع ترتيب الطلب بواسطة بنود الاستعلام.

إمضاء:

export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;

حدود

معامل يكتب وصف
القيم الميدانية مجهول[] قيم الحقل لبدء هذا الاستعلام بعد ، حسب ترتيب الاستعلام عن طريق.

عائدات:

QueryStartAtconstraint

querystartatconstraint لتمرير query()

Startat (القيم الميدانية)

ينشئ QueryStartAtconstraint يعدل النتيجة التي تم تعيينها للبدء في الحقول المقدمة بالنسبة إلى ترتيب الاستعلام. يجب أن يتطابق ترتيب قيم الحقل مع ترتيب الطلب بواسطة بنود الاستعلام.

إمضاء:

export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;

حدود

معامل يكتب وصف
القيم الميدانية مجهول[] قيم الحقل لبدء هذا الاستعلام في ترتيب طلب الاستعلام بواسطة.

عائدات:

QueryStartAtconstraint

querystartatconstraint لتمرير query() .

الدالة (يسار،...)

assregatefieldequal (يسار ، يمين)

يقارن اثنين ' حالات للمساواة.

إمضاء:

export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;

حدود

معامل يكتب وصف
غادر إطعام <مجهول> قارن هذا المجال المطبوع مع right .
يمين إطعام <مجهول> قارن هذا الإحضار مع left .

عائدات:

منطقية

accregatequerysnapshotequal (يسار ، يمين)

يقارن اثنين من حالات AggregateQuerySnapshot للمساواة.

تعتبر حالتان AggregateQuerySnapshot "متساوية" إذا كان لديهم استعلامات أساسية تقارن المساواة ، ونفس البيانات.

إمضاء:

export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;

حدود

معامل يكتب وصف
غادر Aggregatequerysnapshot <comphectpectype ، appmodeltype ، dbmodeltype> أول AggregateQuerySnapshot للمقارنة.
يمين Aggregatequerysnapshot <comphectpectype ، appmodeltype ، dbmodeltype> المجموعة الثانية AggregateQuerySnapshot للمقارنة.

عائدات:

منطقية

true إذا كانت الكائنات "متساوية" ، كما هو محدد أعلاه ، أو false ذلك.

Queryequal (يسار ، يمين)

إرجاع صحيح إذا كانت الاستعلامات المقدمة تشير إلى نفس المجموعة وتطبيق نفس القيود.

إمضاء:

export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;

حدود

معامل يكتب وصف
غادر استفسار <appmodeltype ، dbmodeltype> Query للمقارنة.
يمين استفسار <appmodeltype ، dbmodeltype> Query للمقارنة.

عائدات:

منطقية

صحيح إذا كانت المراجع تشير إلى نفس الموقع في نفس قاعدة بيانات Firestore.

refequal (يسار ، يمين)

إرجاع صحيح إذا كانت المراجع المقدمة متساوية.

إمضاء:

export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;

حدود

معامل يكتب وصف
غادر وثيقة مرجعية <appmodeltype ، dbmodeltype> | جمع <appmodeltype ، dbmodeltype> إشارة إلى المقارنة.
يمين وثيقة مرجعية <appmodeltype ، dbmodeltype> | جمع <appmodeltype ، dbmodeltype> إشارة إلى المقارنة.

عائدات:

منطقية

صحيح إذا كانت المراجع تشير إلى نفس الموقع في نفس قاعدة بيانات Firestore.

Snapshotequal (يسار ، يمين)

إرجاع صحيح إذا كانت اللقطات المقدمة متساوية.

إمضاء:

export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;

حدود

معامل يكتب وصف
غادر DocumentSnapshot <appmodeltype ، dbmodeltype> | Querysnapshot <appmodeltype ، dbmodeltype> لقطة للمقارنة.
يمين DocumentSnapshot <appmodeltype ، dbmodeltype> | Querysnapshot <appmodeltype ، dbmodeltype> لقطة للمقارنة.

عائدات:

منطقية

صحيح إذا كانت اللقطات متساوية.

وظيفة (الحد، ...)

الحد (الحد)

يخلق querylimitconstraint الذي يعيد فقط المستندات المطابقة الأولى.

إمضاء:

export declare function limit(limit: number): QueryLimitConstraint;

حدود

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

عائدات:

QueryLimitConstraint

تم إنشاء QueryLimitConstraint .

ليميتتولاست(الحد)

ينشئ querylimitconstraint الذي يعيد فقط آخر المستندات المطابقة.

يجب عليك تحديد جملة orderBy واحدة على الأقل لاستعلامات limitToLast ، وإلا سيتم طرح استثناء أثناء التنفيذ.

إمضاء:

export declare function limitToLast(limit: number): QueryLimitConstraint;

حدود

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

عائدات:

QueryLimitConstraint

تم إنشاء QueryLimitConstraint .

وظيفة (loglevel ، ...)

setLoglevel (loglevel)

يحدد فعل سجلات السحابة Firestore (تصحيح أو خطأ أو صامت).

إمضاء:

export declare function setLogLevel(logLevel: LogLevel): void;

حدود

معامل يكتب وصف
تسجيل مستوى تسجيل مستوى الأناقة التي حددتها للنشاط وتسجيل الخطأ. يمكن أن يكون أي من القيم التالية:
  • debug لمستوى تسجيل أكثر مطوّلة ، في المقام الأول لتصحيح الأخطاء.
  • error في تسجيل الأخطاء فقط.
  • silent to turn off logging.

عائدات:

فارغ

وظيفة (ن، ...)

الزيادة (ن)

إرجاع قيمة خاصة يمكن استخدامها مع setDoc () أو updatedOC () التي تخبر الخادم بزيادة القيمة الحالية للحقل بالقيمة المحددة.

إذا كان المعامل أو قيمة الحقل الحالية يستخدم دقة النقطة العائمة ، فإن جميع الحساب يتبع IEEE 754 دلالات. إذا كانت كلتا القيمتين أعداد صحيحة ، فإن Number.MAX_SAFE_INTEGER خارج نطاق الأرقام الآمنة لـ JavaScript ( Number.MIN_SAFE_INTEGER ) تخضع أيضا لخسارة الدقة. علاوة على ذلك ، بمجرد معالجتها بواسطة الواجهة الخلفية Firestore ، يتم توج جميع عمليات عدد صحيح بين -2^63 و 2^63-1.

إذا كانت قيمة الحقل الحالية ليست من number النوع ، أو إذا لم يكن الحقل موجودًا بعد ، فإن التحول يضع الحقل على القيمة المحددة.

إمضاء:

export declare function increment(n: number): FieldValue;

حدود

معامل يكتب وصف
ن رقم القيمة للزيادة بواسطة.

عائدات:

قيمة الحقل

حارس FieldValue للاستخدام في مكالمة إلى setDoc() أو updateDoc()

وظيفة (استعلام ، ...)

getAggregate(استعلام، تجميعالمواصفات)

يحسب المجموعات المحددة على المستندات في مجموعة النتائج من الاستعلام المحدد دون تنزيل المستندات فعليًا.

يعد استخدام هذه الوظيفة لأداء التجميعات فعالًا لأن قيم التجميع النهائية فقط ، وليس بيانات المستندات "، يتم تنزيلها. يمكن أن تؤدي هذه الوظيفة تجميعات المستندات في الحالات التي تكون فيها مجموعة النتائج كبيرة بشكل محظور للتنزيل بالكامل (آلاف المستندات).

إمضاء:

export declare function getAggregate<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;

حدود

معامل يكتب وصف
استفسار استفسار <appmodeltype ، dbmodeltype> الاستعلام الذي تم تجميع مجموعة النتائج.
الركام التجميعات CENTERSIPE كائن AggregateSpec يحدد المجاميع لأداء مجموعة النتائج. يحدد CommgectesPec الأسماء المستعارة لكل إجمالي ، والذي يمكن استخدامه لاسترداد النتيجة الإجمالية.

عائدات:

وعد < acmgregequerysnapshot <comphectpectype ، appmodeltype ، dbmodeltype >>

مثال

const aggregateSnapshot = await getAggregate(query, {
  countOfDocs: count(),
  totalHours: sum('hours'),
  averageScore: average('score')
});

const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;

getCount (استعلام)

يحسب عدد المستندات في مجموعة النتائج من الاستعلام المحدد دون تنزيل المستندات بالفعل.

يعد استخدام هذه الوظيفة لحساب المستندات فعالًا لأنه يتم تنزيل العدد النهائي فقط ، وليس بيانات المستندات ،. يمكن لهذه الوظيفة حساب المستندات في الحالات التي تكون فيها مجموعة النتائج كبيرة بشكل محظور للتنزيل بالكامل (آلاف المستندات).

إمضاء:

export declare function getCount<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
    count: AggregateField<number>;
}, AppModelType, DbModelType>>;

حدود

معامل يكتب وصف
استفسار استفسار <appmodeltype ، dbmodeltype> الاستعلام الذي يتم حساب حجم مجموعة النتائج.

عائدات:

وعد < acmgregequerysnapshot < <number> ؛ } ، appmodeltype ، dbmodeltype >>

وعد سيتم حله مع العد ؛ يمكن استرداد العدد من snapshot.data().count ، حيث تكون snapshot هي AggregateQuerySnapshot التي يحلها الوعد الذي تم إرجاعه.

الحصول على المستندات (الاستعلام)

ينفذ الاستعلام ويعيد النتائج باعتباره Querysnapshot .

يتم تنفيذ جميع الاستعلامات مباشرة بواسطة الخادم ، حتى لو تم تنفيذ الاستعلام مسبقًا. تنعكس التعديلات الحديثة فقط في النتائج التي تم استردادها إذا تم تطبيقها بالفعل من قبل الواجهة الخلفية. إذا كان العميل غير متصل ، فإن العملية تفشل. للاطلاع على النتيجة المخزنة مؤقتًا والتعديلات المحلية ، استخدم Firestore SDK الكامل.

إمضاء:

export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

حدود

معامل يكتب وصف
استفسار استفسار <appmodeltype ، dbmodeltype> Query للتنفيذ.

عائدات:

وعد < querysnapshot <appmodeltype ، dbmodeltype >>

الوعد الذي سيتم حله مع نتائج الاستعلام.

استعلام (استعلام ، مركب ، queryconstraints)

ينشئ مثيلًا جديدًا للاستعلام يتم تمديده ليشمل أيضًا قيودًا إضافية على الاستعلام.

إمضاء:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;

حدود

معامل يكتب وصف
استفسار استفسار <appmodeltype ، dbmodeltype> مثيل الاستعلام لاستخدامه كقاعدة للقيود الجديدة.
مركب QueryCompositeFilterConstraint QueryCompositeFilterConstraint للتقدم. إنشاء QueryCompositeFilterConstraint باستخدام () أو أو () .
QueryConstraints QuerynonfilterConstraint [] QueryNonfilterConstraint S لتطبيق (على سبيل المثال Orderby () ، حد() ).

عائدات:

استفسار <appmodeltype ، dbmodeltype>

الاستثناءات

إذا كان لا يمكن دمج أي من قيود الاستعلام المقدمة مع القيود الحالية أو الجديدة.

استعلام (استعلام ، QueryConstraints)

ينشئ مثيلًا جديدًا للاستعلام يتم تمديده ليشمل أيضًا قيودًا إضافية على الاستعلام.

إمضاء:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;

حدود

معامل يكتب وصف
استفسار استفسار <appmodeltype ، dbmodeltype> مثيل الاستعلام لاستخدامه كقاعدة للقيود الجديدة.
QueryConstraints QueryConstraint [] قائمة QueryConstraint ق للتقديم.

عائدات:

استفسار <appmodeltype ، dbmodeltype>

الاستثناءات

إذا كان لا يمكن دمج أي من قيود الاستعلام المقدمة مع القيود الحالية أو الجديدة.

وظيفة (QueryConstraints ، ...)

و (QueryConstraints)

ينشئ QueryCompositeFilterConstraint QueryCompositeFilterConstraint وهو عبارة عن ارتباط لقيود المرشح المحددة. يتضمن مرشح التزامن مستندًا إذا كان يرضي جميع المرشحات المحددة.

إمضاء:

export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

حدود

معامل يكتب وصف
QueryConstraints QueryFilterConstraint [] خياري. قائمة QueryFilterConstraint S لأداء التزامن ل. يجب إنشاء هذه مع مكالمات إلى أين () ، أو() ، او و() .

عائدات:

QueryCompositeFilterConstraint

The QueryCompositeFilterConstraint تم إنشاؤه حديثًا .

أو (QueryConstraints)

ينشئ QueryCompositeFilterConstraint QueryCompositeFilterConstraint وهو انفصال عن قيود المرشح المعطى. يتضمن مرشح الانفصال مستندًا إذا كان يفي بأي من المرشحات المحددة.

إمضاء:

export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

حدود

معامل يكتب وصف
QueryConstraints QueryFilterConstraint [] خياري. قائمة QueryFilterConstraint S لأداء الانفصال عن. يجب إنشاء هذه مع مكالمات إلى أين () ، أو() ، او و() .

عائدات:

QueryCompositeFilterConstraint

The QueryCompositeFilterConstraint تم إنشاؤه حديثًا .

وظيفة (مرجع ، ...)

adddoc (مرجع ، بيانات)

أضف مستندًا جديدًا إلى CollectionReference محددة مع البيانات المحددة ، وقم بتعيين معرف مستند تلقائيًا.

لن تنعكس نتيجة هذه الكتابة إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل ، فإن الكتابة تفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;

حدود

معامل يكتب وصف
مرجع جمع <appmodeltype ، dbmodeltype> إشارة إلى المجموعة لإضافة هذا المستند إلى.
بيانات WithfieldValue <AppModelType> كائن يحتوي على بيانات المستند الجديد.

عائدات:

وعد < documentReference <appmodeltype ، dbmodeltype >>

تم حل Promise مع وجود DocumentReference يشير إلى المستند الذي تم إنشاؤه حديثًا بعد كتابته إلى الواجهة الخلفية.

الاستثناءات

خطأ - إذا لم يكن الإدخال المقدم وثيقة Firestore صالحة.

المجموعة (المرجع، المسار، شرائح المسار)

يحصل على مثيل CollectionReference يشير إلى تحصيل فرعي reference في المسار النسبي المحدد.

إمضاء:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
مرجع جمع <appmodeltype ، dbmodeltype> إشارة إلى مجموعة.
طريق خيط مسار مفصل مائل إلى مجموعة.
المسارات خيط[] شرائح مسار إضافية لتطبيقها بالنسبة للحجة الأولى.

عائدات:

جمع < documentData ، documentData >

مثيل CollectionReference .

الاستثناءات

إذا كان المسار النهائي لديه عدد زوجي من الأجزاء ولم يشير إلى مجموعة.

المجموعة (المرجع، المسار، شرائح المسار)

يحصل على مثيل CollectionReference يشير إلى تحصيل فرعي reference في المسار النسبي المحدد.

إمضاء:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى وثيقة Firestore.
طريق خيط مسار مفصل مائل إلى مجموعة.
المسارات خيط[] شرائح المسار الإضافية التي سيتم تطبيقها بالنسبة للحجة الأولى.

عائدات:

جمع < documentData ، documentData >

مثيل CollectionReference .

الاستثناءات

إذا كان المسار النهائي لديه عدد زوجي من الأجزاء ولم يشير إلى مجموعة.

Deletedoc (مرجع)

يحذف المستند المشار إليه من خلال DocumentReference المحددة .

سوف ينعكس الحذف فقط في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل ، فإن الحذف يفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى المستند إلى حذف.

عائدات:

وعد<باطل>

تم حل Promise بمجرد حذف المستند بنجاح من الواجهة الخلفية.

DOC (المرجع ، المسار ، المسار)

يحصل على مثيل DocumentReference يشير إلى مستند ضمن reference في المسار النسبي المحدد. إذا لم يتم تحديد أي مسار ، فسيتم استخدام معرف فريد تلقائيًا DocumentReference التي تم إرجاعها .

إمضاء:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;

حدود

معامل يكتب وصف
مرجع جمع <appmodeltype ، dbmodeltype> إشارة إلى مجموعة.
طريق خيط مسار مفصل للخلع إلى وثيقة. يجب حذفها لاستخدام معرفات الجيل.
المسارات خيط[] شرائح المسار الإضافية التي سيتم تطبيقها بالنسبة للحجة الأولى.

عائدات:

وثيقة مرجعية <appmodeltype ، dbmodeltype>

مثيل DocumentReference .

الاستثناءات

إذا كان المسار النهائي يحتوي على عدد فردي من الأجزاء ولم يشير إلى وثيقة.

DOC (المرجع ، المسار ، المسار)

يحصل على مثيل DocumentReference يشير إلى مستند ضمن reference في المسار النسبي المحدد.

إمضاء:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى وثيقة Firestore.
طريق خيط مسار مفصل للخلع إلى وثيقة.
المسارات خيط[] شرائح المسار الإضافية التي سيتم تطبيقها بالنسبة للحجة الأولى.

عائدات:

وثيقة مرجعية < documentData ، documentData >

مثيل DocumentReference .

الاستثناءات

إذا كان المسار النهائي يحتوي على عدد فردي من الأجزاء ولم يشير إلى وثيقة.

getDoc (مرجع)

يقرأ المستند المشار إليه بواسطة مرجع المستند المحدد.

يتم جلب جميع المستندات مباشرة من الخادم ، حتى لو تم قراءة أو تعديل المستند مسبقًا. تنعكس التعديلات الحديثة فقط في DocumentSnapshot المسترجعة إذا تم تطبيقها بالفعل من قبل الواجهة الخلفية. إذا كان العميل غير متصل ، فإن القراءة تفشل. إذا كنت ترغب في استخدام التخزين المؤقت أو رؤية التعديلات المحلية ، فيرجى استخدام Firestore SDK الكامل.

إمضاء:

export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> مرجع المستند إلى جلبه.

عائدات:

وعد < documentsnapshot <appmodeltype ، dbmodeltype >>

وعد تم حله باستخدام DocumentSnapshot التي تحتوي على محتويات المستند الحالية.

setDOC (مرجع ، بيانات)

يكتب إلى المستند المشار إليه من خلال DocumentReference المحددة . إذا لم يكن المستند موجودًا بعد ، فسيتم إنشاؤه.

لن تنعكس نتيجة هذه الكتابة إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل ، فإن الكتابة تفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى المستند للكتابة.
بيانات WithfieldValue <AppModelType> خريطة للحقول وقيم المستند.

عائدات:

وعد<باطل>

تم حل Promise بمجرد كتابة البيانات بنجاح إلى الواجهة الخلفية.

الاستثناءات

خطأ - إذا لم يكن الإدخال المقدم وثيقة Firestore صالحة.

setDOC (المرجع ، البيانات ، الخيارات)

يكتب إلى المستند المشار إليه من خلال DocumentReference المحددة . إذا لم يكن المستند موجودًا بعد ، فسيتم إنشاؤه. إذا قدمت merge أو mergeFields ، يمكن دمج البيانات المقدمة في وثيقة موجودة.

لن تنعكس نتيجة هذه الكتابة إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل ، فإن الكتابة تفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى المستند للكتابة.
بيانات partialwithfieldvalue <AppModelType> خريطة للحقول وقيم المستند.
خيارات setOptions كائن لتكوين السلوك المحدد.

عائدات:

وعد<باطل>

تم حل Promise بمجرد كتابة البيانات بنجاح إلى الواجهة الخلفية.

الاستثناءات

خطأ - إذا لم يكن الإدخال المقدم وثيقة Firestore صالحة.

updatedoc (المرجع ، البيانات)

تحديثات الحقول في المستند المشار إليها من قبل DocumentReference المحددة . سيفشل التحديث إذا تم تطبيقه على مستند غير موجود.

لن تنعكس نتيجة هذا التحديث إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل بالإنترنت ، فإن التحديث يفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى المستند إلى التحديث.
بيانات تحديث البيانات <dbmodeltype> كائن يحتوي على الحقول والقيم التي لتحديث المستند. يمكن أن تحتوي الحقول على نقاط للإشارة إلى الحقول المتداخلة داخل المستند.

عائدات:

وعد<باطل>

تم حل Promise بمجرد كتابة البيانات بنجاح إلى الواجهة الخلفية.

الاستثناءات

خطأ - إذا كان الإدخال غير المقدم غير صالح لبيانات Firestore.

UpdateDoc(مرجع، حقل، قيمة، moreFieldsAndValues)

تحديثات الحقول الواردة في المستند المشار إليها من قبل DocumentReference المحددة سيفشل التحديث إذا تم تطبيقه على مستند غير موجود.

يمكن تحديث الحقول المتداخلة من خلال توفير سلاسل مسار الميدان المفصولة DOT أو عن طريق توفير كائنات FieldPath .

لن تنعكس نتيجة هذا التحديث إلا في قراءات المستند التي تحدث بعد حل الوعد الذي تم إرجاعه. إذا كان العميل غير متصل بالإنترنت ، فإن التحديث يفشل. إذا كنت ترغب في رؤية التعديلات المحلية أو تكتب المخزن المؤقت حتى يكون العميل متصلاً بالإنترنت ، فاستخدم Firestore SDK الكامل.

إمضاء:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;

حدود

معامل يكتب وصف
مرجع وثيقة مرجعية <appmodeltype ، dbmodeltype> إشارة إلى المستند إلى التحديث.
مجال سلسلة | ميدان الحقل الأول للتحديث.
قيمة مجهول القيمة الأولى.
MorefieldsAndvalues مجهول[] أزواج القيمة الرئيسية الإضافية.

عائدات:

وعد<باطل>

تم حل Promise بمجرد كتابة البيانات بنجاح إلى الواجهة الخلفية.

الاستثناءات

خطأ - إذا كان الإدخال غير المقدم غير صالح لبيانات Firestore.

وظيفة (لقطة ، ...)

endat (لقطة)

ينشئ queryendatconstraint الذي يعدل النتيجة التي تم تعيينها في المستند المقدم (شامل). الموقف النهائي يتعلق بترتيب الاستعلام. يجب أن تحتوي المستند على جميع الحقول المقدمة بترتيب الاستعلام.

إمضاء:

export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

حدود

معامل يكتب وصف
لمحة DocumentSnapshot <appmodeltype ، dbmodeltype> لقطة الوثيقة لتنتهي في.

عائدات:

Queryendatconstraint

queryendatconstraint لتمرير query()

endbefore (لقطة)

ينشئ queryendatconstraint الذي يعدل النتيجة التي تم تعيينها قبل الانتهاء قبل المستند المقدم (الحصري). الموقف النهائي يتعلق بترتيب الاستعلام. يجب أن تحتوي المستند على جميع الحقول المقدمة بترتيب الاستعلام.

إمضاء:

export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

حدود

معامل يكتب وصف
لمحة DocumentSnapshot <appmodeltype ، dbmodeltype> لقطة الوثيقة لتنتهي من قبل.

عائدات:

Queryendatconstraint

queryendatconstraint لتمرير query()

startafter (لقطة)

ينشئ QueryStartAtconstraint يعدل النتيجة التي تم تعيينها للبدء بعد المستند المقدم (حصريًا). موقف البداية بالنسبة إلى ترتيب الاستعلام. يجب أن تحتوي المستند على جميع الحقول المقدمة بترتيب الاستعلام.

إمضاء:

export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

حدود

معامل يكتب وصف
لمحة DocumentSnapshot <appmodeltype ، dbmodeltype> لقطة الوثيقة للبدء بعد.

عائدات:

QueryStartAtconstraint

querystartatconstraint لتمرير query()

Startat (لقطة)

ينشئ QueryStartAtconstraint يعدل النتيجة التي تم تعيينها للبدء في المستند المقدم (شامل). موقف البداية بالنسبة إلى ترتيب الاستعلام. يجب أن تحتوي المستند على جميع الحقول المقدمة في orderBy هذا الاستعلام.

إمضاء:

export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

حدود

معامل يكتب وصف
لمحة DocumentSnapshot <appmodeltype ، dbmodeltype> لقطة المستند للبدء في.

عائدات:

QueryStartAtconstraint

querystartatconstraint لتمرير query() .

addprefixtokeys

إرجاع خريطة جديدة حيث يتم توجيه كل مفتاح مع المفتاح الخارجي الملحق بنقطة.

إمضاء:

export declare type AddPrefixToKeys<Prefix extends string, T extends Record<string, unknown>> = {
    [K in keyof T & string as `${Prefix}.${K}`]+?: string extends K ? any : T[K];
};

ascregatefieldtype

اتحاد جميع أنواع AggregateField التي تدعمها Firestore.

إمضاء:

export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;

الركام

نوع مأخوذ مفاتيحه من AggregateSpec والتي هي قيمها هي نتيجة التجميع التي يؤديها AggregateField المقابل من إدخال AggregateSpec .

إمضاء:

export declare type AggregateSpecData<T extends AggregateSpec> = {
    [P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};

aggregateType

نوع الاتحاد الذي يمثل النوع الكلي المراد تنفيذه.

إمضاء:

export declare type AggregateType = 'count' | 'avg' | 'sum';

childupdatefields

مساعد لحساب الحقول المتداخلة لنوع معين T1. هذا مطلوب لتوزيع أنواع النقابات مثل undefined | {...} (يحدث للدعائم الاختيارية) أو {a: A} | {b: B} .

في حالة الاستخدام هذه ، يتم استخدام V لتوزيع أنواع الاتحاد من T [ Record T[K] ، منذ أن يتم تقييم T[K] كتعبير وليس موزعة.

انظر https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types

إمضاء:

export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;

FirestoreerRorCode

مجموعة رموز حالة Firestore. الرموز هي نفسها في تلك التي تعرضها GRPC هنا: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

القيم المحتملة: - "إلغاء": تم إلغاء العملية (عادةً بواسطة المتصل). - "غير معروف": خطأ غير معروف أو خطأ من مجال خطأ مختلف. - 'argument invalid': حدد العميل وسيطة غير صالحة. لاحظ أن هذا يختلف عن "الشرط الفاشل". يشير "argument غير صالح" إلى الحجج التي تكون مشكلة بغض النظر عن حالة النظام (على سبيل المثال اسم حقل غير صالح). - "الموعد النهائي الموعد النهائي": انتهت الموعد النهائي قبل انتهاء العملية. بالنسبة للعمليات التي تغير حالة النظام ، قد يتم إرجاع هذا الخطأ حتى إذا كانت العملية قد اكتملت بنجاح. على سبيل المثال ، كان من الممكن تأخير استجابة ناجحة من الخادم لفترة طويلة بما يكفي لإنهاء الموعد النهائي. - "غير مؤسس": لم يتم العثور على بعض المستند المطلوب. - "موجود بالفعل": بعض المستندات التي حاولنا إنشاءها موجودة بالفعل. - "الإذن المنقولة": لا يحتوي المتصل على إذن لتنفيذ العملية المحددة. -"الموارد التي يتم تنقيتها": تم استنفاد بعض الموارد ، وربما حصة لكل مستخدم ، أو ربما نظام الملفات بأكمله خارج الفضاء. - "الإثارة الفاشلة": تم رفض العملية لأن النظام ليس في حالة مطلوبة لتنفيذ العملية. - "تم إحباط": تم إحباط العملية ، وعادةً ما تكون بسبب مسألة التزامن مثل إحباط المعاملات ، وما إلى ذلك- "خارج المدى": تمت محاولة العملية تجاوز النطاق الصحيح. - 'Unecteded': لم يتم تنفيذ العملية أو عدم دعمها/تمكينها. - "داخلي": الأخطاء الداخلية. تعني أن بعض الثوابات المتوقعة من قبل النظام الأساسي قد تم كسرها. إذا رأيت أحد هذه الأخطاء ، فسيكون هناك شيء مكسور للغاية. - "غير متوفر": الخدمة غير متوفرة حاليًا. هذا على الأرجح حالة عابرة ويمكن تصحيحها من خلال إعادة المحاولة باستخدام التراجع. - "فقدان البيانات": فقدان البيانات أو الفساد غير قابل للاسترداد. - "غير مصادقة": لا يحتوي الطلب على بيانات اعتماد مصادقة صالحة للعملية.

إمضاء:

export declare type FirestoreErrorCode = 'cancelled' | 'unknown' | 'invalid-argument' | 'deadline-exceeded' | 'not-found' | 'already-exists' | 'permission-denied' | 'resource-exhausted' | 'failed-precondition' | 'aborted' | 'out-of-range' | 'unimplemented' | 'internal' | 'unavailable' | 'data-loss' | 'unauthenticated';

NETTERUPDATEFIELDS

لكل حقل (على سبيل المثال "شريط") ، ابحث عن جميع المفاتيح المتداخلة (على سبيل المثال { 'bar.baz': t1 ، 'bar.qux': t2 } ). تقاطعهم معًا لإنشاء خريطة واحدة تحتوي على جميع المفاتيح الممكنة التي يتم تمييزها جميعًا على أنها اختيارية

إمضاء:

export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
    [K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;

Orderbydirection

يتم تحديد اتجاه شرط orderby () على أنه "desc" أو "ASC" (تنازلي أو تصاعدي).

إمضاء:

export declare type OrderByDirection = 'desc' | 'asc';

partialwithfieldvalue

على غرار Partial<T> لـ TypeScript ، ولكن يسمح بحذف الحقول المتداخلة وتجول القيم الحقل في قيم الممتلكات.

إمضاء:

export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);

بدائية

الأنواع البدائية.

إمضاء:

export declare type Primitive = string | number | boolean | undefined | null;

QueryConstrainttype

يصف قيود الاستعلام المختلفة المتاحة في هذا SDK.

إمضاء:

export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';

QueryFilterConstraint

QueryFilterConstraint هو نوع الاتحاد المساعد الذي يمثل QueryfieldFilterConstraint و QueryCompositeFilterConstraint .

إمضاء:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

QuerynonfilterConstraint

QueryNonFilterConstraint هو نوع من الاتحاد المساعد الذي يمثل QueryConstraints المستخدمة لتضييق أو طلب مجموعة المستندات ، ولكن لا يتم تصفية بشكل صريح على حقل المستند. QueryNonFilterConstraint يتم إنشاء S عن طريق استدعاء Orderby () ، تبدأ في() ، startafter () ، endbefore () ، يغلق عند مستوى() ، limit () أو limittolast () ويمكن بعد ذلك تمريرها إلى الاستعلام () لإنشاء مثيل استعلام جديد يحتوي أيضًا على QueryConstraint .

إمضاء:

export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;

setOptions

كائن خيارات يقوم بتكوين سلوك setDoc () ومكالمات. يمكن تكوين هذه المكالمات لأداء دمج حبيبية بدلاً من الكتابة فوق المستندات المستهدفة بالكامل من خلال توفير SetOptions من merge: true .

إمضاء:

export declare type SetOptions = {
    readonly merge?: boolean;
} | {
    readonly mergeFields?: Array<string | FieldPath>;
};

UnionToEntersection

إعطاء نوع الاتحاد U = T1 | T2 | ... ، يعيد نوعًا متداخلًا (T1 & T2 & ...) .

يستخدم الأنواع الشرطية الموزعة والاستدلال من الأنواع الشرطية. هذا يعمل لأن العديد من المرشحين لنفس النوع المتغير في المواقف المتغير المتغير يؤدي إلى استنتاج نوع التقاطع. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-inters -يكتب

إمضاء:

export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;

تحديث البيانات

تحديث البيانات (للاستخدام مع updatedoc () ) تتكون من مسارات الحقل (على سبيل المثال "foo" أو "foo.baz") تم تعيينها للقيم. الحقول التي تحتوي على نقاط مرجعية الحقول المتداخلة داخل المستند. يمكن تمرير القيم الميدانية في قيم الممتلكات.

إمضاء:

export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;

WhateFilterop

شروط التصفية في A Where () يتم تحديد جملة باستخدام الأوتار '& lt ؛' ، '& lt ؛ =' ، '==' ، '! =' ، '& gt ؛ =' ، '& gt ؛' ، 'array-contains' ، "في" ، "صفيفات الصفيف-أي" ، و "غير في".

إمضاء:

export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';

WithfieldValue

يتيح أن يتم تمرير القيم الحقل كقيمة خاصية مع الحفاظ على سلامة النوع.

إمضاء:

export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);