@firebase/firestore/lite

Funkcje

Funkcja Opis
function(aplikacja, ...)
getFirestore(aplikacja) Zwraca istniejącą domyślną instancję Firestore, która jest powiązana z podaną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.
getFirestore(aplikacja; identyfikator bazy danych) (BETA) Zwraca istniejącą instancję Firestore, która jest powiązana z podaną FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.
initializeFirestore(aplikacja, ustawienia) Inicjuje nową instancję Cloud Firestore z użyciem podanych ustawień. Może zostać wywołana tylko przed innymi funkcjami, w tym getFirestore(). Jeśli ustawienia niestandardowe są puste, ta funkcja odpowiada wywołaniu getFirestore().
initializeFirestore(aplikacja, ustawienia, identyfikator bazy danych) (BETA) Inicjuje nową instancję Cloud Firestore z użyciem podanych ustawień. Może zostać wywołana tylko przed innymi funkcjami, w tym getFirestore(). Jeśli ustawienia niestandardowe są puste, ta funkcja odpowiada wywołaniu getFirestore().
function(firestore, ...)
kolekcja(firestore, ścieżka, PathSegments) Pobiera instancję CollectionReference odwołującą się do kolekcji w podanej ścieżce bezwzględnej.
collectionGroup(firestore, collectionId) Tworzy i zwraca nową instancję Query, która obejmuje wszystkie dokumenty w bazie danych znajdujące się w kolekcji lub podkolekcji o podanej wartości collectionId.
connectFirestoreEmulator(firestore, host, port, options) Zmodyfikuj tę instancję, aby komunikować się z emulatorem Cloud Firestore.Uwaga: tę instancję należy wywołać, zanim zostanie ona użyta do wykonania jakichkolwiek operacji.
doc(firestore, Path, PathSegments) Pobiera wystąpienie DocumentReference odwołujące się do dokumentu w podanej ścieżce bezwzględnej.
runTransaction(firestore, updateFunction, opcje) Wykonuje określony updateFunction, a następnie próbuje zatwierdzić zmiany zastosowane w transakcji. Jeśli jakikolwiek odczytywany dokument w transakcji uległ zmianie, Cloud Firestore ponawia próbę wykonania polecenia updateFunction. Jeśli nie uda się potwierdzić po 5 próbach, transakcja nie powiedzie się.Maksymalna liczba zapisów w ramach jednej transakcji to 500.
terminate(firestore) Zatrzymuje podaną instancję Firestore.Po wywołaniu terminate() można używać tylko funkcji clearIndexedDbPersistence(). Każda inna funkcja zgłasza FirestoreError. Zakończenie nie powoduje anulowania oczekujących zapisów, a wszystkie obietnice, które oczekują na odpowiedź z serwera, nie zostaną zrealizowane.Aby uruchomić ponownie po zakończeniu działania, utwórz nową instancję instancji Firestore z funkcją getFirestore().Uwaga: w normalnych okolicznościach wywoływanie funkcji terminate() nie jest wymagane. Ta funkcja jest przydatna tylko wtedy, gdy chcesz wymusić zwolnienie wszystkich zasobów przez tę instancję lub w połączeniu z funkcją clearIndexedDbPersistence(), która gwarantuje zniszczenie każdego stanu lokalnego między uruchomieniami testów.
writeBatch(firestore) Tworzy wsad zapisu służącą do wykonywania wielu zapisów jako pojedynczej operacji niepodzielnej. Maksymalna dozwolona liczba zapisów w pojedynczej operacji WriteBatch to 500.Wynik tych zapisów będzie widoczny tylko w odczytach dokumentów, które nastąpią po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
function()
count() Utwórz obiekt AggregateField, którego można użyć do obliczenia liczby dokumentów w zbiorze wynikowym zapytania.
deleteField() Zwraca czujnik do użycia z funkcją updateDoc() lub setDoc() z funkcją {merge: true} do oznaczenia pola do usunięcia.
documentId() Zwraca specjalny wskaźnik FieldPath, który odnosi się do identyfikatora dokumentu. Można go używać w zapytaniach do sortowania i filtrowania według identyfikatora dokumentu.
getFirestore(), Zwraca istniejącą domyślną instancję Firestore, która jest powiązana z domyślną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.
serverTimestamp(), Zwraca wartość czujnika używaną z funkcją setDoc() lub updateDoc(), aby uwzględnić w zapisanych danych sygnaturę czasową wygenerowaną przez serwer.
function(databaseId, ...)
getFirestore(databaseId) (BETA) Zwraca istniejącą instancję Firestore, która jest powiązana z domyślną FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.
function(elements, ...)
arrayRemove(elements) Zwraca wartość specjalną, której można użyć z funkcją setDoc() lub informuje serwer, że ma usunąć podane elementy z dowolnej wartości tablicy, która już istnieje na serwerze. Wszystkie wystąpienia każdego określonego elementu zostaną usunięte z tablicy. Jeśli modyfikowane pole nie jest jeszcze tablicą, zostanie zastąpione pustą tablicą.
arrayUnion(elementy) Zwraca wartość specjalną, której można użyć w przypadku funkcji setDoc() lub updateDoc(), która informuje serwer, że ma połączyć podane elementy z dowolną wartością tablicy, która już istnieje na serwerze. Każdy określony element, którego jeszcze nie ma w tablicy, zostanie dodany na końcu. Jeśli modyfikowane pole nie jest jeszcze tablicą, zostanie ona zastąpiona tablicą zawierającą dokładnie określone elementy.
function(field, ...)
average(field) Utwórz obiekt AggregateField, którego można używać do obliczania średniej wartości z określonego pola dla zakresu dokumentów w zbiorze wynikowym zapytania.
suma(field) Utwórz obiekt AggregateField, którego można używać do obliczania sumy określonego pola w zakresie dokumentów w zbiorze wynikowym zapytania.
function(fieldPath, ...)
orderBy(fieldPath, directionsStr) Tworzy obiekt QueryOrderByConstraint, który sortuje wynik zapytania według określonego pola (opcjonalnie w kolejności malejącej, a nie rosnącej).Uwaga: dokumenty, które nie zawierają wskazanego pola, nie pojawią się w wyniku zapytania.
where(fieldPath, opStr, value) Tworzy obiekt QueryFieldFilterConstraint, który wymusza, by dokumenty zawierały określone pole, a wartość spełniała podane ograniczenie relacji.
function(fieldValues, ...)
endAt(fieldValues) Tworzy obiekt QueryEndAtConstraint, który zmienia wyniki tak, aby kończyć się w podanych polach względem kolejności zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.
endBefore(fieldValues) Tworzy obiekt QueryEndAtConstraint, który zmienia wynik tak, aby kończył się przed podanymi polami zgodnie z kolejnością zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.
startAfter(fieldValues) Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się po podanych polach zgodnie z kolejnością zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.
startAt(fieldValues), Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się od podanych pól względem kolejności zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.
function(left, ...)
aggregateFieldEqual(po lewej, po prawej) Porównuje 2 instancje „AggregateField”, aby zapewnić równość.
aggregateQuerySnapshotEqual(po lewej, po prawej) Porównuje 2 instancje AggregateQuerySnapshot w celu uzyskania równości.2 instancje typu AggregateQuerySnapshot są uznawane za „równe”. jeśli mają podstawowe zapytania, które porównują te same dane.
queryEqual(po lewej, po prawej) Zwraca wartość „prawda”, jeśli podane zapytania wskazują tę samą kolekcję i stosują te same ograniczenia.
refEqual(po lewej, po prawej) Zwraca wartość prawda, jeśli podane odwołania są równe.
snapshotEqual(po lewej, po prawej) Zwraca wartość „prawda”, jeśli podane zrzuty są równe.
function(limit, ...)
limit(limit) Tworzy zasadę QueryLimitConstraint, która zwraca tylko pierwsze pasujące dokumenty.
limitToLast(limit) Tworzy zasadę QueryLimitConstraint, która zwraca tylko ostatnie pasujące dokumenty.Musisz określić co najmniej jedną klauzulę orderBy dla zapytań limitToLast. W przeciwnym razie podczas wykonywania zostanie zgłoszony wyjątek.
function(logLevel, ...)
setLogLevel(logLevel) Ustawia szczegółowość logów Cloud Firestore (debugowanie, błędy lub ciche).
function(n, ...)
increment(n), Zwraca wartość specjalną, której można użyć z funkcją setDoc() lub updateDoc(), która informuje serwer, że ma zwiększyć bieżącą wartość pola o podaną wartość.Jeśli operand lub bieżąca wartość pola używają precyzji zmiennoprzecinkowej, wszystkie funkcje arytmetyczne są zgodne z semantyką IEEE 754. Jeśli obie wartości są liczbami całkowitymi, wartości spoza bezpiecznego zakresu liczbowego w JavaScripcie (od Number.MIN_SAFE_INTEGER do Number.MAX_SAFE_INTEGER) również mogą zostać utracone. Ponadto po przetworzeniu przez backend Firestore wszystkie operacje na liczbach całkowitych są ograniczone od -2^63 do 2^63-1.Jeśli bieżąca wartość pola nie ma typu number lub pole jeszcze nie istnieje, przekształcenie ustawia w polu określoną wartość.
function(zapytanie, ...)
getAggregate(query, AggregateSpec) Oblicza określone agregacje na podstawie dokumentów znajdujących się w zestawie wyników danego zapytania bez pobierania dokumentów.Efektywnie jest używanie tej funkcji do agregacji, ponieważ uwzględnia się tylko ostateczne wartości agregacji, a nie wartości dokumentów. danych. Ta funkcja może agregować dokumenty, gdy zbiór wyników jest zbyt duży do pobrania w całości (tysiące dokumentów).
getCount(query) Oblicza liczbę dokumentów w zbiorze wyników dla danego zapytania bez pobierania dokumentów.Ta funkcja jest wydajna w celu liczenia dokumentów, ponieważ tylko wynikowa liczba dokumentów, a nie dokumenty danych. Ta funkcja może zliczać dokumenty w przypadkach, gdy zestaw wyników jest zbyt duży do pobrania w całości (tysiąc dokumentów).
getDocuments(zapytanie) Wykonuje zapytanie i zwraca wyniki w postaci QuerySnapshot.Wszystkie zapytania są wykonywane bezpośrednio przez serwer, nawet jeśli dane zapytanie zostało wykonane wcześniej. Ostatnie zmiany są odzwierciedlane w pobranych wynikach tylko wtedy, gdy zostały już zastosowane przez backend. Jeśli klient jest offline, operacja się nie uda. Aby wyświetlić wyniki wcześniej zapisane w pamięci podręcznej i zmiany lokalne, użyj pełnego pakietu SDK Firestore.
query(zapytanie, kompozytowy filtr, ograniczenia zapytań) Tworzy nową, niezmienną instancję zapytania, która jest rozszerzona o uwzględnienie dodatkowych ograniczeń dotyczących zapytań.
query(zapytanie; ograniczenia zapytań) Tworzy nową, niezmienną instancję zapytania, która jest rozszerzona o uwzględnienie dodatkowych ograniczeń dotyczących zapytań.
function(queryConstraints, ...)
and(queryConstraints) Tworzy nową funkcję QueryCompositeFilterConstraint, która łączy podane ograniczenia filtra. Filtr koniunkcyjny obejmuje dokument, jeśli spełnia wszystkie określone filtry.
or(queryConstraints) Tworzy nową funkcję QueryCompositeFilterConstraint, która stanowi rozdzielenie podanych ograniczeń filtra. Filtr dystrybucji powoduje uwzględnienie dokumentu, jeśli spełnia on którykolwiek z podanych filtrów.
function(odwołanie, ...)
addDoc(odwołanie; dane) Dodaj nowy dokument do określonego elementu CollectionReference z podanymi danymi, automatycznie przypisując mu identyfikator dokumentu.Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które nastąpią po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
collection(odwołanie, ścieżka, segmenty ścieżki) Pobiera instancję CollectionReference odwołującą się do podkolekcji reference w określonej ścieżce względnej.
collection(odwołanie, ścieżka, segmenty ścieżki) Pobiera instancję CollectionReference odwołującą się do podkolekcji reference w określonej ścieżce względnej.
deleteDoc(odwołanie) Usuwa dokument, do którego odwołuje się określony element DocumentReference.Usunięcie będzie widoczne tylko w odczytach dokumentów, które nastąpiły po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, usunięcie się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
doc(odwołanie, ścieżka, segmenty ścieżki) Pobiera wystąpienie DocumentReference odwołujące się do dokumentu z domeny reference w określonej ścieżce względnej. Jeśli nie podasz ścieżki, dla zwróconego elementu DocumentReference zostanie użyty automatycznie wygenerowany unikalny identyfikator.
doc(odwołanie, ścieżka, segmenty ścieżki) Pobiera wystąpienie DocumentReference odwołujące się do dokumentu z domeny reference w określonej ścieżce względnej.
getDoc(odwołanie) Odczytuje dokument, do którego odwołuje się określone odwołanie do dokumentu.Wszystkie dokumenty są bezpośrednio pobierane z serwera, nawet jeśli dokument został wcześniej odczytany lub zmodyfikowany. Ostatnie zmiany są odzwierciedlane w pobranych DocumentSnapshot tylko wtedy, gdy zostały już zastosowane przez backend. Jeśli klient jest offline, odczyt się nie uda. Jeśli chcesz korzystać z buforowania lub lokalnych modyfikacji, użyj pełnego pakietu SDK Firestore.
setDoc(odwołanie; dane) Zapisuje dane w dokumencie, do którego odwołuje się określony element DocumentReference. Jeśli dokument jeszcze nie istnieje, zostanie utworzony.Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które nastąpiły po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
setDoc(odwołanie; dane; opcje) Zapisuje dane w dokumencie, do którego odwołuje się określony element DocumentReference. Jeśli dokument jeszcze nie istnieje, zostanie utworzony. Jeśli podasz merge lub mergeFields, podane dane zostaną scalone w istniejący dokument.Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które nastąpiły po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
updateDoc(odwołanie; dane) Aktualizuje pola w dokumencie, do którego odwołuje się określony element DocumentReference. Aktualizacja się nie powiedzie, jeśli zostanie zastosowana do dokumentu, który nie istnieje.Wynik tej aktualizacji będzie widoczny tylko w odczytach dokumentów, które nastąpiły po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, aktualizacja się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
updateDoc(odwołanie; pole; wartość; moreFieldsAndValues) Aktualizuje pola w dokumencie, do którego odwołuje się podany element DocumentReference. Aktualizacja nie powiedzie się, jeśli zostanie zastosowana do dokumentu, który nie istnieje.Zagnieżdżone pola można zaktualizować, podając ciągi ścieżek pól oddzielone kropką lub przez podanie obiektów FieldPath.Wynik tej aktualizacji będzie widoczny tylko w odczytach dokumentów, które nastąpią po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, aktualizacja się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.
function(zrzut; ...)
endAt(zrzut) Tworzy obiekt QueryEndAtConstraint, który zmienia zbiór wyników tak, aby kończył się na podanym dokumencie (włącznie). Pozycja końcowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.
endBefore(snapshot) Tworzy obiekt QueryEndAtConstraint, który zmienia (z wyłączeniem) wartość ustawioną na koniec przed podanym dokumentem. Pozycja końcowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.
startAfter(migawka) Tworzy obiekt QueryStartAtConstraint, który zmienia zbiór wyników tak, aby rozpoczynał się po dostarczonym dokumencie (z wyłączeniem). Pozycja początkowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.
startAt(zrzut) Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się od podanego dokumentu (włącznie). Pozycja początkowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola wymienione w polu orderBy tego zapytania.
function(wartości, ...)
vector(wartości) Tworzy nowy obiekt VectorValue utworzony na podstawie kopii podanej tablicy liczb.

Zajęcia

Klasa Opis
AggregateField, Reprezentuje agregację, którą może wykonać Firestore.
AggregateQuerySnapshot (Zagregowany zrzut dysku) Wyniki wykonania zapytania agregacji.
Baty Stały obiekt reprezentujący tablicę bajtów.
Odniesienie do kolekcji Obiektu CollectionReference można używać do dodawania dokumentów, pobierania odwołań do dokumentów i wysyłania zapytań o dokumenty (przy użyciu funkcji query()).
DocumentReference Pozycja DocumentReference odnosi się do lokalizacji dokumentu w bazie danych Firestore i może być używana do zapisywania, odczytywania i nasłuchiwania lokalizacji. Dokument we wskazanej lokalizacji może lub nie istnieje.
DocumentSnapshot Element DocumentSnapshot zawiera dane odczytane z dokumentu w bazie danych Firestore. Dane można wyodrębnić za pomocą .data() lub .get(<field>) w celu uzyskania określonego pola.W przypadku elementu DocumentSnapshot, który wskazuje nieistniejący dokument, wszelkie uprawnienia dostępu do danych będą miały wartość „niezdefiniowany”. Możesz użyć metody exists(), aby wprost zweryfikować istnienie dokumentu.
FieldPath FieldPath odnosi się do pola w dokumencie. Ścieżka może się składać z jednej nazwy pola (odnoszącej się do pola najwyższego poziomu w dokumencie) lub listy nazw pól (odnoszącej się do zagnieżdżonego pola w dokumencie).Utwórz FieldPath, podając nazwy pól. Jeśli podasz więcej niż jedną nazwę pola, ścieżka będzie wskazywać na zagnieżdżone pole w dokumencie.
Wartość pola Wartości, których można używać podczas zapisywania pól dokumentu za pomocą funkcji set() lub update().
Firestore Interfejs usługi Cloud Firestore.Nie wywołuj tego konstruktora bezpośrednio. Zamiast niej użyj funkcji getFirestore().
Błąd sklepu Firestore Błąd zwrócony przez operację Firestore.
GeoPoint Stały obiekt reprezentujący lokalizację geograficzną w Firestore. Lokalizacja jest przedstawiana w postaci pary szerokości i długości geograficznej.Wartości szerokości geograficznej należą do zakresu od [-90 do 90]. Długość geograficzna mieści się w zakresie [-180, 180].
Zapytanie Query odnosi się do zapytania, które można odczytać lub odsłuchać. Możesz też tworzyć dopracowane obiekty Query, dodając filtry i kolejność.
Ograniczenie filtra QueryCompositeFilter QueryCompositeFilterConstraint służy do zawężania zbioru dokumentów zwracanych przez zapytanie Firestore przez wykonanie logicznego LUB albo ORAZ dla kilku parametrów QueryFieldFilterConstraint lub QueryCompositeFilterConstraint. Metody QueryCompositeFilterConstraint są tworzone przez wywołanie funkcji or() lub and(), a następnie można je przekazać do funkcji query() w celu utworzenia nowej instancji zapytania, która zawiera też funkcję QueryCompositeFilterConstraint.
QueryConstraint QueryConstraint służy do zawężania zbioru dokumentów zwracanych przez zapytanie Firestore. Obiekty QueryConstraint są tworzone przez wywoływanie funkcji where(), orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit(), limitToLast(). Mogą one również zostać przekazane do zapytania QueryConstraint, które zawiera zapytanie.
QueryDocumentSnapshot Element QueryDocumentSnapshot zawiera dane odczytane z dokumentu w bazie danych Firestore w ramach zapytania. Dokument gwarantuje istnienie, a jego dane można wyodrębnić za pomocą funkcji .data() lub .get(<field>) w celu uzyskania określonego pola.QueryDocumentSnapshot oferuje tę samą powierzchnię interfejsu API co DocumentSnapshot. Wyniki zapytania zawierają tylko istniejące dokumenty, więc właściwość exists ma zawsze wartość prawda, a data() nigdy nie zwraca wartości „niezdefiniowane”.
ZapytanieEndAtConstraint QueryEndAtConstraint służy do wykluczania dokumentów na końcu zbioru wyników zwróconego przez zapytanie Firestore. Cele QueryEndAtConstraint są tworzone przez wywołanie metody endAt() lub endBefore() i można je następnie przekazać do funkcji query() w celu utworzenia nowej instancji zapytania, która również zawiera tę funkcję QueryEndAtConstraint.
QueryFieldFilterConstraint QueryFieldFilterConstraint służy do zawężania zbioru dokumentów zwracanych przez zapytanie Firestore przez filtrowanie według co najmniej jednego pola dokumentu. Metody QueryFieldFilterConstraint są tworzone przez wywołanie funkcji where(), a następnie można je przekazać do query() w celu utworzenia nowej instancji zapytania, która również zawiera tę funkcję QueryFieldFilterConstraint.
QueryLimitConstraint QueryLimitConstraint służy do ograniczenia liczby dokumentów zwracanych przez zapytanie Firestore. Cele QueryLimitConstraint są tworzone przez wywołanie funkcji limit() lub limitToLast() i można je następnie przekazać do funkcji query() w celu utworzenia nowej instancji zapytania, która również zawiera tę funkcję QueryLimitConstraint.
QueryOrderByConstraint QueryOrderByConstraint służy do sortowania zbioru dokumentów zwracanych przez zapytanie Firestore. Elementy QueryOrderByConstraint są tworzone przez wywołanie metody orderBy(), a następnie można je przekazać do query() w celu utworzenia nowego wystąpienia zapytania zawierającego także ten element QueryOrderByConstraint.Uwaga: dokumenty, które nie zawierają pola orderBy, nie będą widoczne w wyniku zapytania.
Zrzut zapytania Pole QuerySnapshot zawiera 0 lub więcej obiektów DocumentSnapshot reprezentujących wyniki zapytania. Dostęp do dokumentów jest możliwy w postaci tablicy za pomocą właściwości docs lub w formie wyliczanych przy użyciu metody forEach. Liczbę dokumentów można określić za pomocą właściwości empty i size.
ZapytanieStartAtConstraint QueryStartAtConstraint służy do wykluczania dokumentów na początku zbioru wyników zwróconego przez zapytanie Firestore. Cele QueryStartAtConstraint są tworzone przez wywołanie metody startAt() lub startAfter() i można je następnie przekazać do funkcji query() w celu utworzenia nowej instancji zapytania, która również zawiera tę funkcję QueryStartAtConstraint.
Sygnatura czasowa Timestamp reprezentuje punkt w czasie niezależny od dowolnej strefy czasowej i kalendarza, reprezentowany jako sekundy i ułamki sekund w rozdzielczości nanosekundy w czasie UTC.Jest kodowany przy użyciu kalendarza gregoriańskiego proleptycznego, który powoduje przeniesienie kalendarza gregoriańskiego wstecz do pierwszego roku. Jest zakodowany przy założeniu, że wszystkie minuty trwają 60 sekund, tzn.sekundy przestępne są „rozmywane”. więc do interpretacji nie jest potrzebna tabela drugiej przestępnej. Zakres wynosi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59.999999999Z.Przykłady i dodatkowe specyfikacje znajdziesz w definicji sygnatury czasowej.
Transakcja Odwołanie do transakcji.Obiekt Transaction przekazywany do updateFunction transakcji udostępnia metody odczytu i zapisu danych w kontekście transakcji. Patrz: runTransaction().
Wartość wektorowa Reprezentuje typ wektora w dokumentach Firestore. Utwórz instancję z użyciem rozszerzenia . Wartość wektorowa
Zapis wsadowy Zapis wsadowy służący do wykonywania wielu zapisów jako jednej jednostki atomowej.Obiekt WriteBatch można pozyskać przez wywołanie funkcji writeBatch(). Udostępnia metody dodawania zapisów do wsadu zapisu. Żaden zapis nie zostanie zatwierdzony (ani widoczny lokalnie) do czasu wywołania funkcji WriteBatch.commit().

Interfejsy

Interfejs Opis
AggregateSpec, Określa zestaw agregacji i ich aliasy.
DocumentData Dane dokumentu (do użytku z funkcją setDoc()) składają się z pól zmapowanych na wartości.
FirestoreDataConverter Konwerter używany przez withConverter() do przekształcania obiektów użytkownika typu AppModelType w dane Firestore typu DbModelType.Użycie konwertera umożliwia określenie ogólnych argumentów podczas przechowywania i pobierania obiektów z Firestore.W tym kontekście model „AppModel” to klasa używana w aplikacji do łączenia powiązanych informacji i funkcji. Taka klasa może na przykład mieć właściwości ze złożonymi, zagnieżdżonymi typami danych, właściwościami używanymi do notowania, właściwościami typów nieobsługiwanych przez Firestore (takich jak symbol i bigint) oraz funkcjami pomocniczymi, które wykonują operacje złożone. Takie klasy nie są odpowiednie i/lub nie można ich przechowywać w bazie danych Firestore. Wystąpienia takich klas muszą być konwertowane na „zwykłe stare obiekty JavaScript” Cele typu POJO z wyłącznie właściwościami podstawowymi, potencjalnie zagnieżdżone w innych obiektach POJO lub tablicach obiektów POJO. W tym kontekście ten typ jest określany jako „DbModel” i byłby obiektem nadającym się do trwałego przechowywania w Firestore. Dla wygody aplikacje mogą zaimplementować FirestoreDataConverter i zarejestrować konwertera przy użyciu obiektów Firestore, takich jak DocumentReference lub Query, aby automatycznie przekonwertować AppModel na DbModel podczas zapisywania w Firestore oraz przekonwertować DbModel na AppModel podczas pobierania z Firestore.
Ustawienia Określa niestandardowe konfiguracje instancji Cloud Firestore. Musisz je ustawić przed wywołaniem innych metod.
TransactionOptions (Opcje transakcji). Opcje dostosowywania działania transakcji.

Aliasy typu

Wpisz alias Opis
AddPrefixToKeys (DodajPrefixToKeys) Zwraca nową mapę, w której każdy klucz jest poprzedzony kropką dołączonej do klucza zewnętrznego.
AggregateFieldType, Związek wszystkich typów AggregateField obsługiwanych przez Firestore.
AggregateSpecData, Typ, którego klucze są pobierane z elementu AggregateSpec i którego wartości są wynikiem agregacji przeprowadzonej przez odpowiednią funkcję AggregateField z danych wejściowych AggregateSpec.
AggregateType, Typ sumy reprezentujący typ agregacji do wykonania.
ChildUpdateFields (Pola aktualizacji podrzędnych) Pomoc do obliczania zagnieżdżonych pól dla danego typu T1. Jest to konieczne do rozdzielenia typów sumowania, takich jak undefined | {...} (z opcjonalnych rekwizytów) lub {a: A} | {b: B}.W tym przypadku użycia używana jest metoda V, która służy do rozdzielania typów sumowania T[K] w usłudze Record, ponieważ T[K] jest obliczana jako wyrażenie, a nie rozproszona.Patrz: https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
Kod błędu sklepu Firestore Zestaw kodów stanu Firestore. Kody są takie same w przypadku kodów widocznych tutaj przez gRPC: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdMożliwe wartości: – „cancelled” (anulowano): operacja została anulowana (zwykle przez wywołującego). – „Nieznany”: nieznany błąd lub błąd z innej domeny błędu. - 'invalid-argument”: klient podał nieprawidłowy argument. Pamiętaj, że to nie to samo co „niespełniony warunek wstępny”. „nieprawidłowy argument” wskazuje argumenty, które powodują problemy niezależnie od stanu systemu (np. nieprawidłowa nazwa pola). – „deadline-overeded” (przekroczono termin): upłynął termin przed ukończeniem operacji. W przypadku operacji, które zmieniają stan systemu, ten błąd może zostać zwrócony nawet wtedy, gdy operacja zakończyła się pomyślnie. Na przykład pomyślna odpowiedź serwera mogła być tak opóźniona, że termin upłynął. – „not-found” (nie znaleziono): niektóre żądane dokumenty nie zostały znalezione. - „already-exists”: istnieje już dokument, który próbowaliśmy utworzyć. - „permission-denied”: element wywołujący nie ma uprawnień do wykonania określonej operacji. - „wyczerpanie zasobu”: część zasobów została wyczerpany, być może limit na użytkownika lub w całym systemie plików brakuje miejsca. – „niepowodzenie-warunek wstępny”: operacja została odrzucona, ponieważ system nie znajduje się w stanie wymaganym do jej wykonania. – „przerwano”: operacja została przerwana, zwykle z powodu problemu równoczesności, takiego jak przerwanie transakcji itp. – „poza zakresem”: podjęto próbę wykonania operacji poza prawidłowym zakresem. – „nie zaimplementowano”: operacja nie została wdrożona lub nie jest obsługiwana/włączona. - „internal”: błędy wewnętrzne. Oznacza, że pewne niezmienniki oczekiwane przez system bazowy zostały uszkodzone. Jeśli widzisz jeden z tych błędów, coś jest bardzo uszkodzone. – „unavailable” (niedostępna): usługa jest obecnie niedostępna. Jest to najprawdopodobniej stan przejściowy, który można rozwiązać, ponawiając próby. - „data-loss”: nieodwracalna utrata lub uszkodzenie danych. - „unauthenticated”: żądanie nie ma prawidłowych danych uwierzytelniających dla tej operacji.
NestedUpdateFields W każdym polu (np. „bar”) znajdź wszystkie zagnieżdżone klucze (np. {'bar.baz': T1, 'bar.qux': T2}). Przekrój je, aby utworzyć jedną mapę zawierającą wszystkie możliwe klucze, które są oznaczone jako opcjonalne
OrderByDirection (Zamówienie w kierunku zamówienia) Kierunek klauzuli orderBy() jest określony jako „desc” lub „asc” (rosnąco lub malejąco).
Częściowyz_wartością pola Podobny do Partial<T> w TypeScript, pozwala jednak na pomijanie zagnieżdżonych pól i przekazywanie wartości FieldValues jako wartości właściwości.
Podstawowy Typy podstawowe.
Typ ograniczenia zapytania Opisuje różne ograniczenia zapytań dostępne w tym pakiecie SDK.
QueryFilterConstraint QueryFilterConstraint to typ sumy pomocniczej, który reprezentuje QueryFieldFilterConstraint i QueryCompositeFilterConstraint.
QueryNonFilterConstraint QueryNonFilterConstraint to typ sumy pomocniczej, który reprezentuje ograniczenia QueryConstraints używane do zawężania lub porządkowania zestawu dokumentów, ale które nie są jawnie filtrowane według pola dokumentu. Cele QueryNonFilterConstraint są tworzone przez wywołanie orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() lub limitToLast(). Następnie można je przekazać do funkcji query()/, aby utworzyć nowe wystąpienie zapytania /.QueryConstraint
SetOptions Obiekt opcji, który konfiguruje działanie funkcji setDoc() i wywołania. Te wywołania można skonfigurować tak, aby przeprowadzać szczegółowe scalanie, zamiast zastępować całe dokumenty docelowe za pomocą funkcji SetOptions z merge: true.
UniaToIntersection Zwraca typ części wspólnej U = T1 | T2 | ..., zwracany przez typ części wspólnej: (T1 & T2 & ...).Wykorzystuje dystrybucyjne typy warunkowe i wnioskowanie na podstawie typów warunkowych. Jest to możliwe, ponieważ większa liczba kandydatów dla tej samej zmiennej typu w kontrwariantach powoduje wywnioskowanie typu przecięcia. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type
UpdateData, Zaktualizuj dane (do użycia z funkcją updateDoc()), które składają się ze ścieżek pól (np. „foo” lub „foo.baz”) zmapowanych na wartości. Pola zawierające kropki odnoszą się do pól zagnieżdżonych w dokumencie. Wartości FieldValues można przekazywać jako wartości właściwości.
whereFilterOp Warunki filtra w klauzuli where() są określane za pomocą ciągów „&lt;”, „&lt;=', '==', '!=', '&gt;=', „&gt;”, „array-contains”, „in”, „array-contains-any” i „not-in”.
WithFieldValue Umożliwia przekazywanie wartości FieldValue jako wartości właściwości przy zachowaniu bezpieczeństwa typu.

funkcja(aplikacja, ...)

getFirestore(aplikacja)

Zwraca istniejącą domyślną instancję Firestore, która jest powiązana z podaną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.

Podpis:

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

Parametry

Parametr Typ Opis
aplikacja Aplikacja Firebase Instancja FirebaseApp, z którą jest powiązana zwrócona instancja Firestore.

Zwroty:

Firestore

Instancja Firestore podanej aplikacji.

getFirestore(aplikacja; identyfikator bazy danych)

Ten interfejs API jest dostępny w wersji testowej dla deweloperów i może się zmienić w zależności od otrzymanych opinii. Nie używaj tego interfejsu API w środowisku produkcyjnym.

Zwraca istniejącą instancję Firestore, która jest powiązana z podaną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.

Podpis:

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

Parametry

Parametr Typ Opis
aplikacja Aplikacja Firebase Instancja FirebaseApp, z którą jest powiązana zwrócona instancja Firestore.
identyfikator bazy danych ciąg znaków Nazwa bazy danych.

Zwroty:

Firestore

Instancja Firestore podanej aplikacji.

zainicjujFirestore(aplikacja; ustawienia)

Inicjuje nową instancję Cloud Firestore z użyciem podanych ustawień. Może zostać wywołana tylko przed innymi funkcjami, w tym getFirestore(). Jeśli ustawienia niestandardowe są puste, ta funkcja odpowiada wywołaniu getFirestore().

Podpis:

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

Parametry

Parametr Typ Opis
aplikacja Aplikacja Firebase FirebaseApp, z którą powiązane będzie wystąpienie Firestore.
ustawienia Ustawienia Obiekt ustawień służący do konfigurowania instancji Firestore.

Zwroty:

Firestore

Nowo zainicjowana instancja Firestore.

zainicjujFirestore(aplikacja; ustawienia; identyfikator_bazy danych)

Ten interfejs API jest dostępny w wersji testowej dla deweloperów i może się zmienić w zależności od otrzymanych opinii. Nie używaj tego interfejsu API w środowisku produkcyjnym.

Inicjuje nową instancję Cloud Firestore z użyciem podanych ustawień. Może zostać wywołana tylko przed innymi funkcjami, w tym getFirestore(). Jeśli ustawienia niestandardowe są puste, ta funkcja odpowiada wywołaniu getFirestore().

Podpis:

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

Parametry

Parametr Typ Opis
aplikacja Aplikacja Firebase FirebaseApp, z którą powiązane będzie wystąpienie Firestore.
ustawienia Ustawienia Obiekt ustawień służący do konfigurowania instancji Firestore.
identyfikator bazy danych ciąg znaków Nazwa bazy danych.

Zwroty:

Firestore

Nowo zainicjowana instancja Firestore.

funkcja(firestore, ...)

kolekcja(firestore, Path, PathSegments)

Pobiera instancję CollectionReference odwołującą się do kolekcji w podanej ścieżce bezwzględnej.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Odwołanie do głównej instancji Firestore.
ścieżka ciąg znaków Rozdzielona ukośnikiem ścieżka do kolekcji.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki do zastosowania w odniesieniu do pierwszego argumentu.

Zwroty:

CollectionReference<DocumentData, DocumentData>

Instancja CollectionReference.

Wyjątki

Końcowa ścieżka ma parzystą liczbę segmentów i nie wskazuje zbioru.

grupa_kolekcji(firestore, identyfikator kolekcji)

Tworzy i zwraca nową instancję Query, która obejmuje wszystkie dokumenty w bazie danych znajdujące się w kolekcji lub podkolekcji o określonym collectionId.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Odwołanie do głównej instancji Firestore.
identyfikator kolekcji ciąg znaków Identyfikuje kolekcje, których ma dotyczyć zapytanie. Uwzględniona zostanie każda kolekcja lub podkolekcja o tym identyfikatorze, który jest ostatnim segmentem jej ścieżki. Nie może zawierać ukośnika.

Zwroty:

Zapytanie<DocumentData, DocumentData>

Utworzono: Query.

ConnectFirestoreEmulator(firestore, host, port, options)

Zmodyfikuj tę instancję, aby komunikować się z emulatorem Cloud Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Instancja Firestore, która ma zostać skonfigurowana pod kątem połączenia z emulatorem.
host ciąg znaków hosta emulatora (np. localhost).
port liczba port emulatora (np. 9000).
opcje { mockUserToken?: EmulatorMockTokenOptions | string;

Zwroty:

nieważne

doc(firestore, ścieżka, PathSegments)

Pobiera wystąpienie DocumentReference odwołujące się do dokumentu w podanej ścieżce bezwzględnej.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Odwołanie do głównej instancji Firestore.
ścieżka ciąg znaków Ścieżka do dokumentu rozdzielana ukośnikami.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki, które zostaną zastosowane w stosunku do pierwszego argumentu.

Zwroty:

DocumentReference<DocumentData, DocumentData>

Instancja DocumentReference.

Wyjątki

Jeśli końcowa ścieżka ma nieparzystą liczbę segmentów i nie wskazuje dokumentu.

runTransaction(firestore, updateFunction, opcje)

Wykonuje określony updateFunction, a następnie próbuje zatwierdzić zmiany zastosowane w transakcji. Jeśli jakikolwiek odczytywany dokument w transakcji uległ zmianie, Cloud Firestore ponawia próbę wykonania operacji updateFunction. Jeśli nie uda się potwierdzić po 5 próbach, transakcja zakończy się niepowodzeniem.

Maksymalna dozwolona liczba zapisów w jednej transakcji to 500.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Odwołanie do bazy danych Firestore, w odniesieniu do której ma zostać uruchomiona ta transakcja.
funkcja updateFunction (transaction: Transaction) => Obietnica<T> Funkcja do wykonania w kontekście transakcji.
opcje TransactionOptions (Opcje transakcji). Obiekt opcji służący do konfigurowania maksymalnej liczby prób do zatwierdzenia.

Zwroty:

Obietnica<T>

Jeśli transakcja została ukończona lub została jawnie przerwana (updateFunction zwrócił nieudaną obietnicę), w tym miejscu zwracana jest obietnica zwrócona przez obiekt updateFunction. W przeciwnym razie, jeśli transakcja się nie udała, zwracana jest odrzucona obietnica z odpowiednim błędem błędu.

zakończyć(firestore)

Zatrzymuje podaną instancję Firestore.

Po wywołaniu funkcji terminate() można używać tylko funkcji clearIndexedDbPersistence(). Każda inna funkcja zgłasza FirestoreError. Zakończenie nie powoduje anulowania oczekujących zapisów, a wszystkie obietnice, które oczekują na odpowiedź z serwera, nie zostaną zrealizowane.

Aby uruchomić ponownie po zakończeniu działania, utwórz nową instancję instancji Firestore z funkcją getFirestore().

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore Instancja Firestore do zamknięcia.

Zwroty:

Obietnica<void>

Promise, który jest rozstrzygnięty po zakończeniu działania instancji.

zapis wsadowy(firestore)

Tworzy wsad zapisu służącą do wykonywania wielu zapisów jako pojedynczej operacji niepodzielnej. Maksymalna dozwolona liczba zapisów w pojedynczej operacji WriteBatch to 500.

Wynik tych zapisów będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
firestore Firestore

Zwroty:

Zapis wsadowy

WriteBatch, który może być używany do atomowego wykonywania wielu zapisów.

funkcja()

count()

Utwórz obiekt AggregateField, którego można użyć do obliczenia liczby dokumentów w zbiorze wynikowym zapytania.

Podpis:

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

Zwroty:

AggregateField<numer>

deleteField()

Zwraca czujnik do użycia z funkcją updateDoc() lub setDoc() z funkcją {merge: true} do oznaczenia pola do usunięcia.

Podpis:

export declare function deleteField(): FieldValue;

Zwroty:

Wartość pola

documentId()

Zwraca specjalny wskaźnik FieldPath, który odnosi się do identyfikatora dokumentu. Można go używać w zapytaniach do sortowania i filtrowania według identyfikatora dokumentu.

Podpis:

export declare function documentId(): FieldPath;

Zwroty:

FieldPath

getFirestore()

Zwraca istniejącą domyślną instancję Firestore, która jest powiązana z domyślną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.

Podpis:

export declare function getFirestore(): Firestore;

Zwroty:

Firestore

Instancja Firestore podanej aplikacji.

servertimestamp()

Zwraca wartość czujnika używaną z funkcją setDoc() lub updateDoc(), aby uwzględnić w zapisanych danych sygnaturę czasową wygenerowaną przez serwer.

Podpis:

export declare function serverTimestamp(): FieldValue;

Zwroty:

Wartość pola

funkcji(identyfikatorbazy_danych, ...)

getFirestore(databaseId)

Ten interfejs API jest dostępny w wersji testowej dla deweloperów i może się zmienić w zależności od otrzymanych opinii. Nie używaj tego interfejsu API w środowisku produkcyjnym.

Zwraca istniejącą instancję Firestore powiązaną z domyślną aplikacją FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi.

Podpis:

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

Parametry

Parametr Typ Opis
identyfikator bazy danych ciąg znaków Nazwa bazy danych.

Zwroty:

Firestore

Instancja Firestore podanej aplikacji.

funkcja(elementy, ...)

tablicaRemove(elements)

Zwraca wartość specjalną, której można użyć z funkcją setDoc() lub informuje serwer, że ma usunąć podane elementy z dowolnej wartości tablicy, która już istnieje na serwerze. Wszystkie wystąpienia każdego określonego elementu zostaną usunięte z tablicy. Jeśli modyfikowane pole nie jest jeszcze tablicą, zostanie zastąpione pustą tablicą.

Podpis:

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

Parametry

Parametr Typ Opis
elementy nieznana[] Elementy do usunięcia z tablicy.

Zwroty:

Wartość pola

Wieża FieldValue do użycia w wywołaniu z setDoc() lub updateDoc()

tablicaUnion(elementy)

Zwraca wartość specjalną, której można użyć w przypadku funkcji setDoc() lub updateDoc(), która informuje serwer, że ma połączyć podane elementy z dowolną wartością tablicy, która już istnieje na serwerze. Każdy określony element, którego jeszcze nie ma w tablicy, zostanie dodany na końcu. Jeśli modyfikowane pole nie jest jeszcze tablicą, zostanie ona zastąpiona tablicą zawierającą dokładnie określone elementy.

Podpis:

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

Parametry

Parametr Typ Opis
elementy nieznana[] Elementy, które mają zostać połączone z tablicą.

Zwroty:

Wartość pola

wartownik FieldValue do użycia w wywołaniu setDoc() lub updateDoc().

funkcja(pole, ...)

średnia(pole)

Utwórz obiekt AggregateField, którego można używać do obliczania średniej wartości z określonego pola dla zakresu dokumentów w zbiorze wynikowym zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
pole ciąg znaków | FieldPath Określa pole do uśrednienia w zestawie wyników.

Zwroty:

AggregateField<numer | null>

suma(pole)

Utwórz obiekt AggregateField, którego można używać do obliczania sumy określonego pola w zakresie dokumentów w zbiorze wynikowym zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
pole ciąg znaków | FieldPath Określa pole do zsumowania w zbiorze wyników.

Zwroty:

AggregateField<numer>

function(fieldPath, ...)

orderBy(fieldPath, directionsStr)

Tworzy funkcję QueryOrderByConstraint, która sortuje wynik zapytania według podanego pola (opcjonalnie w kolejności malejącej, a nie rosnąco).

Podpis:

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

Parametry

Parametr Typ Opis
FieldPath ciąg znaków | FieldPath Pole, według którego ma być sortowane.
KierunekStr OrderByDirection (Zamówienie w kierunku zamówienia) Opcjonalny kierunek sortowania „asc” lub „malejąco”). Jeśli nie podasz żadnej wartości, będzie rosnąć.

Zwroty:

QueryOrderByConstraint

Utworzono QueryOrderByConstraint.

gdzie(polePath, opStr, wartość)

Tworzy obiekt QueryFieldFilterConstraint, który wymusza, by dokumenty zawierały określone pole, a wartość spełniała podane ograniczenie relacji.

Podpis:

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

Parametry

Parametr Typ Opis
FieldPath ciąg znaków | FieldPath Ścieżka do porównania
opStr whereFilterOp Ciąg operacji (np. "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
wartość nieznany Wartość do porównania

Zwroty:

QueryFieldFilterConstraint

Utworzono QueryFieldFilterConstraint.

function(fieldValues, ...)

endAt(fieldValues)

Tworzy obiekt QueryEndAtConstraint, który zmienia wyniki tak, aby kończyć się w podanych polach względem kolejności zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
PoleValues (wartości pola) nieznana[] Wartości pól, na których ma się zakończyć to zapytanie, w kolejności według:

Zwroty:

ZapytanieEndAtConstraint

Element QueryEndAtConstraint przekazywany do funkcji query()

endBefore(fieldValues)

Tworzy obiekt QueryEndAtConstraint, który zmienia wynik tak, aby kończył się przed podanymi polami zgodnie z kolejnością zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
PoleValues (wartości pola) nieznana[] Wartości pól, które mają zakończyć to zapytanie, w kolejności według:

Zwroty:

ZapytanieEndAtConstraint

Element QueryEndAtConstraint przekazywany do funkcji query()

startAfter(fieldValues)

Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się po podanych polach zgodnie z kolejnością zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
PoleValues (wartości pola) nieznana[] Wartości pól, po których ma się rozpoczynać to zapytanie, w kolejności zależnej od ich kolejności.

Zwroty:

ZapytanieStartAtConstraint

Element QueryStartAtConstraint przekazywany do funkcji query()

startAt(fieldValues)

Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się od podanych pól względem kolejności zapytania. Kolejność wartości pól musi być zgodna z kolejnością klauzul zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
PoleValues (wartości pola) nieznana[] Wartości pól, od których ma się rozpoczynać to zapytanie, w kolejności zależnej od ich kolejności.

Zwroty:

ZapytanieStartAtConstraint

Typ QueryStartAtConstraint przekazywany do funkcji query().

funkcja(po lewej, ...)

zbiorczeFieldEqual(po lewej, po prawej)

Porównuje 2 instancje „AggregateField”, aby zapewnić równość.

Podpis:

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

Parametry

Parametr Typ Opis
lewa AggregateField<nieznana> Porównaj to pole AggregateField z polem right.
prawa AggregateField<nieznana> Porównaj to pole AggregateField z polem left.

Zwroty:

wartość logiczna

zbiorczeQuerySnapshotEqual(po lewej, po prawej)

Porównuje 2 instancje AggregateQuerySnapshot pod kątem równości.

2 instancje typu AggregateQuerySnapshot są uznawane za „równe” jeśli mają podstawowe zapytania, które porównują te same dane.

Podpis:

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

Parametry

Parametr Typ Opis
lewa AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> Pierwsze AggregateQuerySnapshot do porównania.
prawa AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> Drugie pole AggregateQuerySnapshot do porównania.

Zwroty:

wartość logiczna

true, jeśli obiekty są „równe”, jak określono powyżej, lub false w innym przypadku.

queryEqual(lewo; prawo)

Zwraca wartość „prawda”, jeśli podane zapytania wskazują tę samą kolekcję i stosują te same ograniczenia.

Podpis:

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

Parametry

Parametr Typ Opis
lewa Zapytanie<AppModelType, DbModelType> Query do porównania.
prawa Zapytanie<AppModelType, DbModelType> Query do porównania.

Zwroty:

wartość logiczna

true (prawda), jeśli odwołania wskazują tę samą lokalizację w tej samej bazie danych Firestore.

refEqual(po lewej, po prawej)

Zwraca wartość prawda, jeśli podane odwołania są równe.

Podpis:

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

Parametry

Parametr Typ Opis
lewa DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> Odwołanie do porównania.
prawa DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> Odwołanie do porównania.

Zwroty:

wartość logiczna

true (prawda), jeśli odwołania wskazują tę samą lokalizację w tej samej bazie danych Firestore.

zrzut równa(po lewej, po prawej)

Zwraca wartość „prawda”, jeśli podane zrzuty są równe.

Podpis:

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

Parametry

Parametr Typ Opis
lewa DocumentSnapshot<AppModelType, DbModelType> | Zrzut zapytania<AppModelType, DbModelType> Migawka do porównania.
prawa DocumentSnapshot<AppModelType, DbModelType> | Zrzut zapytania<AppModelType, DbModelType> Migawka do porównania.

Zwroty:

wartość logiczna

true (prawda), jeśli zrzuty są równe.

funkcja(limit, ...)

limit(limit)

Tworzy zasadę QueryLimitConstraint, która zwraca tylko pierwsze pasujące dokumenty.

Podpis:

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

Parametry

Parametr Typ Opis
limit liczba Maksymalna liczba produktów do zwrotu.

Zwroty:

QueryLimitConstraint

Utworzono QueryLimitConstraint.

limitToLast(limit)

Tworzy zasadę QueryLimitConstraint, która zwraca tylko ostatnie pasujące dokumenty.

Dla zapytań limitToLast musisz określić co najmniej 1 klauzulę orderBy. W przeciwnym razie podczas wykonywania zostanie zgłoszony wyjątek.

Podpis:

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

Parametry

Parametr Typ Opis
limit liczba Maksymalna liczba produktów do zwrotu.

Zwroty:

QueryLimitConstraint

Utworzono QueryLimitConstraint.

function(logLevel, ...)

setLogLevel(logLevel)

Ustawia szczegółowość logów Cloud Firestore (debugowanie, błędy lub ciche).

Podpis:

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

Parametry

Parametr Typ Opis
poziom logu Poziom logu Szczegółowość ustawiona w przypadku rejestrowania aktywności i błędów. Może mieć dowolną z tych wartości:
  • debug dla najbardziej szczegółowego poziomu rejestrowania, głównie na potrzeby debugowania.
  • error, aby rejestrować tylko błędy.
  • silent to turn off logging.

Zwroty:

nieważne

funkcja(n, ...)

przyrost(n)

Zwraca wartość specjalną, której można użyć z funkcją setDoc() lub updateDoc(), która informuje serwer, że ma zwiększyć bieżącą wartość pola o podaną wartość.

Jeśli operand lub wartość pola bieżącej wykorzystuje precyzję zmiennoprzecinkową, wszystkie funkcje arytmetyczne są zgodne z semantyką IEEE 754. Jeśli obie wartości są liczbami całkowitymi, wartości spoza bezpiecznego zakresu liczbowego kodu JavaScript (Number.MIN_SAFE_INTEGERNumber.MAX_SAFE_INTEGER) również podlegają utracie dokładności. Ponadto po przetworzeniu przez backend Firestore wszystkie operacje na liczbach całkowitych są ograniczone z zakresu od -2^63 do 2^63-1.

Jeśli bieżąca wartość pola nie ma typu number lub jeśli pole jeszcze nie istnieje, przekształcenie ustawia w polu podaną wartość.

Podpis:

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

Parametry

Parametr Typ Opis
n liczba Wartość, o którą ma być zwiększana.

Zwroty:

Wartość pola

Wieża FieldValue do użycia w wywołaniu z setDoc() lub updateDoc()

funkcja(zapytanie; ...)

getAggregate(zapytanie, AggregateSpec)

Oblicza określone agregacje na dokumentach w zestawie wyników danego zapytania bez pobierania dokumentów.

Korzystanie z tej funkcji do przeprowadzania agregacji jest skuteczne, ponieważ tylko ostateczne wartości agregacji, a nie wartości dokumentów danych. Ta funkcja może agregować dokumenty, gdy zbiór wyników jest zbyt duży do pobrania w całości (tysiące dokumentów).

Podpis:

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

Parametry

Parametr Typ Opis
zapytanie Zapytanie<AppModelType, DbModelType> Zapytanie, którego zbiór wyników jest agregowany.
agregacja specyfikacji Typ specyfikacji agregacji Obiekt AggregateSpec, który określa agregacje, które mają zostać wykonane w stosunku do zbioru wyników. Metoda AggregateSpec określa aliasy każdej agregacji, których można używać do pobierania wyników zagregowanych.

Zwroty:

Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>

Przykład

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(zapytanie)

Oblicza liczbę dokumentów w zbiorze wyników danego zapytania bez pobierania dokumentów.

Użycie tej funkcji do liczenia dokumentów jest wydajne, ponieważ dochodzi do liczenia ostatecznej liczby, a nie dokumentów danych. Ta funkcja może zliczać dokumenty w przypadkach, gdy zestaw wyników jest zbyt duży do pobrania w całości (tysiąc dokumentów).

Podpis:

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

Parametry

Parametr Typ Opis
zapytanie Zapytanie<AppModelType, DbModelType> Zapytanie, którego rozmiar zbioru wyników jest obliczany.

Zwroty:

Obietnica<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DbModelType>>

obietnica, która zostanie rozstrzygnięta; liczbę można pobrać z zakresu snapshot.data().count, gdzie snapshot to wartość AggregateQuerySnapshot, którą realizuje zwrócona obietnica.

getDocuments(zapytanie)

Wykonuje zapytanie i zwraca wyniki w postaci QuerySnapshot.

Wszystkie zapytania są wykonywane bezpośrednio przez serwer, nawet jeśli zapytanie zostało wykonane wcześniej. Ostatnie zmiany są odzwierciedlane w pobranych wynikach tylko wtedy, gdy zostały już zastosowane przez backend. Jeśli klient jest offline, operacja się nie uda. Aby wyświetlić wyniki wcześniej zapisane w pamięci podręcznej i zmiany lokalne, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
zapytanie Zapytanie<AppModelType, DbModelType> Query do wykonania.

Zwroty:

Obietnica<QuerySnapshot<AppModelType, DbModelType>>

Obietnica, która zostanie zrealizowana dzięki wynikom zapytania.

zapytanie(zapytanie, kompozytowy filtr, ograniczenia zapytań)

Tworzy nową, niezmienną instancję zapytania, która jest rozszerzona o uwzględnienie dodatkowych ograniczeń dotyczących zapytań.

Podpis:

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

Parametry

Parametr Typ Opis
zapytanie Zapytanie<AppModelType, DbModelType> Instancja Zapytanie, która ma być używana jako podstawa dla nowych ograniczeń.
Filtr złożony Ograniczenie filtra QueryCompositeFilter Wartość QueryCompositeFilterConstraint, która ma zostać zastosowana. Utwórz QueryCompositeFilterConstraint za pomocą funkcji and() lub or().
Ograniczenia zapytań QueryNonFilterConstraint[] Dodatkowe parametry QueryNonFilterConstraint do zastosowania (np. orderBy(), limit()).

Zwroty:

Zapytanie<AppModelType, DbModelType>

Wyjątki

jeśli żadnego z podanych ograniczeń dotyczących zapytań nie można połączyć z istniejącymi lub nowymi ograniczeniami.

zapytanie(zapytanie; ograniczenia zapytań)

Tworzy nową, niezmienną instancję zapytania, która jest rozszerzona o uwzględnienie dodatkowych ograniczeń dotyczących zapytań.

Podpis:

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

Parametry

Parametr Typ Opis
zapytanie Zapytanie<AppModelType, DbModelType> Instancja Zapytanie, która ma być używana jako podstawa dla nowych ograniczeń.
Ograniczenia zapytań Ograniczenie zapytania[] Lista ograniczeń zapytań, które mają zostać zastosowane.

Zwroty:

Zapytanie<AppModelType, DbModelType>

Wyjątki

jeśli żadnego z podanych ograniczeń dotyczących zapytań nie można połączyć z istniejącymi lub nowymi ograniczeniami.

function(queryConstraints, ...)

and(queryConstraints)

Tworzy nową funkcję QueryCompositeFilterConstraint, która łączy podane ograniczenia filtra. Filtr koniunkcyjny obejmuje dokument, jeśli spełnia wszystkie określone filtry.

Podpis:

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

Parametry

Parametr Typ Opis
Ograniczenia zapytań QueryFilterConstraint[] Opcjonalnie. Lista QueryFilterConstraints, dla której ma zostać przedstawiony spójnik. Należy je tworzyć z wywołaniami where(), or() lub and().

Zwroty:

Ograniczenie filtra QueryCompositeFilter

Nowo utworzony QueryCompositeFilterConstraint.

or(queryConstraints)

Tworzy nową funkcję QueryCompositeFilterConstraint, która stanowi rozdzielenie podanych ograniczeń filtra. Filtr dystrybucji powoduje uwzględnienie dokumentu, jeśli spełnia on którykolwiek z podanych filtrów.

Podpis:

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

Parametry

Parametr Typ Opis
Ograniczenia zapytań QueryFilterConstraint[] Opcjonalnie. Lista QueryFilterConstraints, dla której mają zostać wykonane rozłączenia. Należy je tworzyć z wywołaniami where(), or() lub and().

Zwroty:

Ograniczenie filtra QueryCompositeFilter

Nowo utworzony QueryCompositeFilterConstraint.

funkcja(odwołanie, ...)

addDoc(odwołanie; dane)

Dodaj do określonego elementu CollectionReference nowy dokument z podanymi danymi, automatycznie przypisując mu identyfikator dokumentu.

Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie CollectionReference<AppModelType, DbModelType> Odwołanie do kolekcji, do której ma zostać dodany ten dokument.
dane WithFieldValue<AppModelType> Obiekt zawierający dane nowego dokumentu.

Zwroty:

Promise<DocumentReference<AppModelType, DbModelType>>

Pole Promise zostało rozwiązane za pomocą parametru DocumentReference wskazującego nowo utworzony dokument po zapisaniu go w backendzie.

Wyjątki

Błąd – jeśli podane dane wejściowe nie są prawidłowym dokumentem Firestore.

kolekcja(odwołanie; ścieżka; segmenty ścieżki)

Pobiera instancję CollectionReference odwołującą się do podkolekcji reference w określonej ścieżce względnej.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie CollectionReference<AppModelType, DbModelType> Odwołanie do kolekcji.
ścieżka ciąg znaków Rozdzielona ukośnikiem ścieżka do kolekcji.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki do zastosowania w odniesieniu do pierwszego argumentu.

Zwroty:

CollectionReference<DocumentData, DocumentData>

Instancja CollectionReference.

Wyjątki

Końcowa ścieżka ma parzystą liczbę segmentów i nie wskazuje zbioru.

kolekcja(odwołanie; ścieżka; segmenty ścieżki)

Pobiera instancję CollectionReference odwołującą się do podkolekcji reference w określonej ścieżce względnej.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu Firestore.
ścieżka ciąg znaków Rozdzielona ukośnikiem ścieżka do kolekcji.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki, które zostaną zastosowane w stosunku do pierwszego argumentu.

Zwroty:

CollectionReference<DocumentData, DocumentData>

Instancja CollectionReference.

Wyjątki

Końcowa ścieżka ma parzystą liczbę segmentów i nie wskazuje zbioru.

deleteDoc(odwołanie)

Usuwa dokument, do którego odwołuje się określony element DocumentReference.

Usunięcie będzie widoczne tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, usunięcie się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu, który ma zostać usunięty.

Zwroty:

Obietnica<void>

Błąd Promise został rozwiązany po usunięciu dokumentu z backendu.

doc(odwołanie; ścieżka; segmenty ścieżek)

Pobiera wystąpienie DocumentReference odwołujące się do dokumentu z domeny reference w określonej ścieżce względnej. Jeśli nie podasz ścieżki, dla zwróconego zasobu DocumentReference zostanie użyty automatycznie wygenerowany unikalny identyfikator.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie CollectionReference<AppModelType, DbModelType> Odwołanie do kolekcji.
ścieżka ciąg znaków Ścieżka do dokumentu rozdzielana ukośnikami. Trzeba to pominąć, by użyć automatycznie generowanych identyfikatorów.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki, które zostaną zastosowane w stosunku do pierwszego argumentu.

Zwroty:

DocumentReference<AppModelType, DbModelType>

Instancja DocumentReference.

Wyjątki

Jeśli końcowa ścieżka ma nieparzystą liczbę segmentów i nie wskazuje dokumentu.

doc(odwołanie; ścieżka; segmenty ścieżek)

Pobiera wystąpienie DocumentReference odwołujące się do dokumentu z domeny reference w określonej ścieżce względnej.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu Firestore.
ścieżka ciąg znaków Ścieżka do dokumentu rozdzielana ukośnikami.
segmenty ścieżki ciąg znaków[] Dodatkowe segmenty ścieżki, które zostaną zastosowane w stosunku do pierwszego argumentu.

Zwroty:

DocumentReference<DocumentData, DocumentData>

Instancja DocumentReference.

Wyjątki

Jeśli końcowa ścieżka ma nieparzystą liczbę segmentów i nie wskazuje dokumentu.

getDoc(odwołanie)

Odczytuje dokument, do którego odwołuje się określone odwołanie do dokumentu.

Wszystkie dokumenty są pobierane bezpośrednio z serwera, nawet jeśli dokument został wcześniej odczytany lub zmodyfikowany. Ostatnie zmiany są odzwierciedlane w pobranych DocumentSnapshot tylko wtedy, gdy zostały już zastosowane przez backend. Jeśli klient jest offline, odczyt się nie uda. Jeśli chcesz korzystać z buforowania lub lokalnych modyfikacji, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odniesienie do dokumentu do pobrania.

Zwroty:

Promise<DocumentSnapshot<AppModelType, DbModelType>>

Obietnica rozwiązana za pomocą elementu DocumentSnapshot zawierającego bieżącą zawartość dokumentu.

setDoc(odwołanie; dane)

Zapisuje dane w dokumencie, do którego odwołuje się określony element DocumentReference. Jeśli dokument jeszcze nie istnieje, zostanie utworzony.

Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu do zapisania.
dane WithFieldValue<AppModelType> Mapa pól i wartości dokumentu.

Zwroty:

Obietnica<void>

Działanie Promise zostało rozwiązane po zapisaniu danych w backendzie.

Wyjątki

Błąd – jeśli podane dane wejściowe nie są prawidłowym dokumentem Firestore.

setDoc(odwołanie; dane; opcje)

Zapisuje dane w dokumencie, do którego odwołuje się określony element DocumentReference. Jeśli dokument jeszcze nie istnieje, zostanie utworzony. Jeśli podasz merge lub mergeFields, podane dane zostaną scalone w istniejący dokument.

Wynik tego zapisu będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, zapis się nie uda. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu do zapisania.
dane częściowo z wartością pola<AppModelType> Mapa pól i wartości dokumentu.
opcje SetOptions Obiekt do skonfigurowania zachowania zestawu.

Zwroty:

Obietnica<void>

Działanie Promise zostało rozwiązane po zapisaniu danych w backendzie.

Wyjątki

Błąd – jeśli podane dane wejściowe nie są prawidłowym dokumentem Firestore.

updateDoc(odwołanie; dane)

Aktualizuje pola w dokumencie, do którego odwołuje się podany element DocumentReference. Aktualizacja się nie powiedzie, jeśli zostanie zastosowana do nieistniejącego dokumentu.

Wynik tej aktualizacji będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, aktualizacja się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu do zaktualizowania.
dane UpdateData<DbModelType> Obiekt zawierający pola i wartości do zaktualizowania dokumentu. Pola mogą zawierać kropki, aby odwoływać się do zagnieżdżonych pól w dokumencie.

Zwroty:

Obietnica<void>

Działanie Promise zostało rozwiązane po zapisaniu danych w backendzie.

Wyjątki

Błąd – jeśli podane dane wejściowe są nieprawidłowe dla danych Firestore.

updateDoc(odwołanie; pole; wartość; moreFieldsAndValues)

Aktualizuje pola w dokumencie, do którego odwołuje się podany DocumentReference. Aktualizacja zakończy się niepowodzeniem, jeśli zostanie zastosowana do nieistniejącego dokumentu.

Zagnieżdżone pola można aktualizować, podając rozdzielone kropkami ciągi ścieżek pól lub obiekty FieldPath.

Wynik tej aktualizacji będzie widoczny tylko w odczytach dokumentów, które mają miejsce po rozwiązaniu zwróconej obietnicy. Jeśli klient jest offline, aktualizacja się nie powiedzie. Jeśli chcesz wyświetlać lokalne zmiany lub zapisy w buforze, dopóki klient nie będzie online, użyj pełnego pakietu SDK Firestore.

Podpis:

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

Parametry

Parametr Typ Opis
odniesienie DocumentReference<AppModelType, DbModelType> Odwołanie do dokumentu do zaktualizowania.
pole ciąg znaków | FieldPath Pierwsze pole do zaktualizowania.
wartość nieznany Pierwsza wartość.
więcej pól i wartości nieznana[] Dodatkowe pary klucz-wartość.

Zwroty:

Obietnica<void>

Działanie Promise zostało rozwiązane po zapisaniu danych w backendzie.

Wyjątki

Błąd – jeśli podane dane wejściowe są nieprawidłowe dla danych Firestore.

funkcja(zrzut; ...)

endAt(zrzut)

Tworzy obiekt QueryEndAtConstraint, który zmienia zbiór wyników tak, aby kończył się na podanym dokumencie (włącznie). Pozycja końcowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
zrzut DocumentSnapshot<AppModelType, DbModelType> Migawka dokumentu, na której ma się kończyć.

Zwroty:

ZapytanieEndAtConstraint

Element QueryEndAtConstraint przekazywany do funkcji query()

endPrzed(zrzut)

Tworzy obiekt QueryEndAtConstraint, który zmienia (z wyłączeniem) wartość ustawioną na koniec przed podanym dokumentem. Pozycja końcowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
zrzut DocumentSnapshot<AppModelType, DbModelType> Migawka dokumentu, która ma się zakończyć wcześniej.

Zwroty:

ZapytanieEndAtConstraint

Element QueryEndAtConstraint przekazywany do funkcji query()

startAfter(zrzut)

Tworzy obiekt QueryStartAtConstraint, który zmienia zbiór wyników tak, aby rozpoczynał się po dostarczonym dokumencie (z wyłączeniem). Pozycja początkowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola określone w polu orderBy zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
zrzut DocumentSnapshot<AppModelType, DbModelType> Migawka dokumentu, po której ma nastąpić uruchomienie.

Zwroty:

ZapytanieStartAtConstraint

Element QueryStartAtConstraint przekazywany do funkcji query()

startAt(zrzut)

Tworzy obiekt QueryStartAtConstraint, który modyfikuje zbiór wyników tak, aby rozpoczynał się od podanego dokumentu (włącznie). Pozycja początkowa zależy od kolejności zapytania. Dokument musi zawierać wszystkie pola wymienione w polu orderBy tego zapytania.

Podpis:

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

Parametry

Parametr Typ Opis
zrzut DocumentSnapshot<AppModelType, DbModelType> Migawka dokumentu, od której ma się zaczynać.

Zwroty:

ZapytanieStartAtConstraint

Typ QueryStartAtConstraint przekazywany do funkcji query().

funkcja(wartości, ...)

wektor(wartości)

Tworzy nowy obiekt VectorValue utworzony na podstawie kopii podanej tablicy liczb.

Podpis:

export declare function vector(values?: number[]): VectorValue;

Parametry

Parametr Typ Opis
wartości liczba[] Utwórz instancję VectorValue z kopią tej tablicy liczb.

Zwroty:

Wartość wektorowa

Nowy obiekt VectorValue utworzony na podstawie kopii podanej tablicy liczb.

DodajPrefixToKeys

Zwraca nową mapę, w której każdy klucz jest poprzedzony kropką dołączonej do klucza zewnętrznego.

Podpis:

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];
};

Typ pola agregacji

Związek wszystkich typów AggregateField obsługiwanych przez Firestore.

Podpis:

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

Dane specyfikacji zbiorczej

Typ, którego klucze są pobierane z elementu AggregateSpec, a jego wartości są wynikiem agregacji przeprowadzonej przez odpowiednie AggregateField na podstawie danych wejściowych AggregateSpec.

Podpis:

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

Typ agregacji

Typ sumy reprezentujący typ agregacji do wykonania.

Podpis:

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

ChildUpdateFields (Pola aktualizacji podrzędnych)

Pomoc do obliczania zagnieżdżonych pól dla danego typu T1. Jest to konieczne, aby rozdzielić typy połączeń, takie jak undefined | {...} (dzieje się w przypadku opcjonalnych rekwizytów) lub {a: A} | {b: B}.

W tym przypadku użycia funkcji V służy do rozdzielania typów sumowania T[K] w obiekcie Record, ponieważ T[K] jest obliczana jako wyrażenie i nie jest rozproszona.

Więcej informacji znajdziesz na stronie https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types

Podpis:

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

Kod błędu Firestore

Zestaw kodów stanu Firestore. Kody są takie same jak te widoczne przez gRPC tutaj: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Możliwe wartości: – „cancelled” (anulowano): operacja została anulowana (zwykle przez osobę wywołującą). – „Nieznany”: nieznany błąd lub błąd z innej domeny błędu. - 'invalid-argument”: klient podał nieprawidłowy argument. Pamiętaj, że to nie to samo co „niespełniony warunek wstępny”. „nieprawidłowy argument” wskazuje argumenty, które powodują problemy niezależnie od stanu systemu (np. nieprawidłowa nazwa pola). – „deadline-overeded” (przekroczono termin): upłynął termin przed ukończeniem operacji. W przypadku operacji, które zmieniają stan systemu, ten błąd może zostać zwrócony nawet wtedy, gdy operacja zakończyła się pomyślnie. Na przykład pomyślna odpowiedź serwera mogła być tak opóźniona, że termin upłynął. – „not-found” (nie znaleziono): niektóre żądane dokumenty nie zostały znalezione. - „already-exists”: istnieje już dokument, który próbowaliśmy utworzyć. - „permission-denied”: element wywołujący nie ma uprawnień do wykonania określonej operacji. - „wyczerpanie zasobu”: część zasobów została wyczerpany, być może limit na użytkownika lub w całym systemie plików brakuje miejsca. – „niepowodzenie-warunek wstępny”: operacja została odrzucona, ponieważ system nie znajduje się w stanie wymaganym do jej wykonania. – „przerwano”: operacja została przerwana, zwykle z powodu problemu równoczesności, takiego jak przerwanie transakcji itp. – „poza zakresem”: podjęto próbę wykonania operacji poza prawidłowym zakresem. – „nie zaimplementowano”: operacja nie została wdrożona lub nie jest obsługiwana/włączona. - „internal”: błędy wewnętrzne. Oznacza, że pewne niezmienniki oczekiwane przez system bazowy zostały uszkodzone. Jeśli widzisz jeden z tych błędów, coś jest bardzo uszkodzone. – „unavailable” (niedostępna): usługa jest obecnie niedostępna. Jest to najprawdopodobniej stan przejściowy, który można rozwiązać, ponawiając próby. - „data-loss”: nieodwracalna utrata lub uszkodzenie danych. - „unauthenticated”: żądanie nie ma prawidłowych danych uwierzytelniających dla tej operacji.

Podpis:

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';

NestedUpdateFields

W każdym polu (np. „bar”) znajdź wszystkie zagnieżdżone klucze (np. {'bar.baz': T1, 'bar.qux': T2}). Przekrój je, aby utworzyć jedną mapę zawierającą wszystkie możliwe klucze, które są oznaczone jako opcjonalne

Podpis:

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

Kolejność według kierunku

Kierunek klauzuli orderBy() jest określony jako „desc” lub „asc” (rosnąco lub malejąco).

Podpis:

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

Częściowe z wartością pola

Podobnie jak Partial<T> w TypeScript, umożliwia pomijanie zagnieżdżonych pól i przekazywanie wartości FieldValues jako wartości właściwości.

Podpis:

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

Podstawowy

Typy podstawowe.

Podpis:

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

Typ ograniczenia zapytania

Opisuje różne ograniczenia zapytań dostępne w tym pakiecie SDK.

Podpis:

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

Ograniczenie filtra zapytania

QueryFilterConstraint to typ sumy pomocniczej, który reprezentuje QueryFieldFilterConstraint i QueryCompositeFilterConstraint.

Podpis:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

Zapytanie niebędące ograniczeniem filtra

QueryNonFilterConstraint to typ sumy pomocniczej, który reprezentuje ograniczenia QueryConstraints używane do zawężania lub porządkowania zestawu dokumentów, ale które nie są jawnie filtrowane według pola dokumentu. QueryNonFilterConstraintIdentyfikatory są tworzone przez wywołanie orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() lub limitToLast(). Można je następnie przekazać do funkcji query()/, aby utworzyć nowe wystąpienie zapytania /.QueryConstraint

Podpis:

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

SetOptions

Obiekt opcji, który konfiguruje działanie funkcji setDoc() i wywołania. Te wywołania można skonfigurować tak, aby przeprowadzać szczegółowe scalanie, zamiast zastępować całe dokumenty docelowe za pomocą funkcji SetOptions z merge: true.

Podpis:

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

Połączenie

Biorąc pod uwagę typ sumy U = T1 | T2 | ..., zwraca typ przecinka: (T1 & T2 & ...).

Wykorzystuje dystrybucyjne typy warunkowe i wnioskowanie na podstawie typów warunkowych. Jest to możliwe, ponieważ większa liczba kandydatów dla tej samej zmiennej typu w kontrwariantach powoduje wywnioskowanie typu przecięcia. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type

Podpis:

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

Aktualizuj dane

Zaktualizuj dane (do użycia z funkcją updateDoc()), które składają się ze ścieżek pól (np. „foo” lub „foo.baz”) zmapowanych na wartości. Pola zawierające kropki odnoszą się do pól zagnieżdżonych w dokumencie. Wartości FieldValues można przekazywać jako wartości właściwości.

Podpis:

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

GdzieOp Filtr

Warunki filtra w klauzuli where() są określane za pomocą ciągów „&lt;”, „&lt;=', '==', '!=', '&gt;=', „&gt;”, „array-contains”, „in”, „array-contains-any” i „not-in”.

Podpis:

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

Z wartością pola

Umożliwia przekazywanie wartości FieldValue jako wartości właściwości przy zachowaniu bezpieczeństwa typu.

Podpis:

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