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ę o nazwie Firestore, która jest powiązana z podaną FirebaseApp. Jeśli żadna instancja nie istnieje, inicjuje nową z ustawieniami domyślnymi. |
initializeFirestore(aplikacja, ustawienia, identyfikator bazy danych) | Inicjuje nową instancję Firestore z podanymi ustawieniami. 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, ...) | |
clearIndexedDbPersistence(firestore) | Czyści pamięć trwałą. Obejmuje to oczekujące zapisy i dokumenty przechowywane w pamięci podręcznej.Trzeba ją wywołać, gdy instancja Firestore nie jest uruchomiona (po zamknięciu aplikacji lub przy jej pierwszym zainicjowaniu). Podczas uruchamiania ta funkcja musi zostać wywołana przed innymi funkcjami (innymi niż initializeFirestore() i getFirestore()). Jeśli instancja Firestore jest nadal uruchomiona, obietnica zostanie odrzucona z kodem błędu failed-precondition .Uwaga: usługa clearIndexedDbPersistence() przede wszystkim ułatwia pisanie wiarygodnych testów korzystających z Cloud Firestore. Wykorzystuje wydajny mechanizm usuwania istniejących danych, ale nie próbuje bezpiecznie zastąpić danych zapisanych w pamięci podręcznej ani w inny sposób ich nie odzyskać. W przypadku aplikacji, które są wrażliwe na ujawnianie danych z pamięci podręcznej między sesjami użytkownika, zdecydowanie zalecamy rezygnację z zachowania trwałości. |
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. |
disableNetwork(firestore) | Wyłącza korzystanie z sieci przez tę instancję. Można ją ponownie włączyć za pomocą funkcji enableNetwork(). Gdy sieć jest wyłączona, wszystkie detektory zrzutów, wywołania getDoc() lub getDocs() będą zwracać wyniki z pamięci podręcznej, a wszystkie operacje zapisu będą umieszczane w kolejce do czasu przywrócenia sieci. |
doc(firestore, Path, PathSegments) | Pobiera wystąpienie DocumentReference odwołujące się do dokumentu w podanej ścieżce bezwzględnej. |
enableIndexedDbPersistence(firestore, percentageSettings) | Jeśli to możliwe, próbuje włączyć pamięć trwałą.W przypadku niepowodzenia enableIndexedDbPersistence() odrzuca obietnicę lub zgłasza wyjątek. Istnieje kilka możliwych powodów niepowodzenia. Możesz je rozpoznać po komunikacie code o błędzie.* Błąd wstępny: aplikacja jest już otwarta w innej karcie przeglądarki. * Nie zaimplementowano: przeglądarka jest niezgodna z implementacją trwałości offline.Pamiętaj, że nawet po awarii instancja Firestore będzie działać, ale trwałość w trybie offline zostanie wyłączona.Uwaga: funkcja enableIndexedDbPersistence() musi zostać wywołana przed innymi funkcjami (innymi niż initializeFirestore(), getFirestore() ani clearIndexedDbPersistence() w Node.js. |
enableMultiTabIndexedDbPersistence(firestore) | Próbuje włączyć pamięć trwałą z wieloma kartami, jeśli to możliwe. Jeśli ta opcja jest włączona na wszystkich kartach, wszystkie operacje współdzielą dostęp do trwałości lokalnej, w tym współdzielone wykonywanie zapytań i aktualizacje dokumentów lokalnych kompensowane z powodu opóźnienia we wszystkich połączonych instancjach.W przypadku niepowodzenia enableMultiTabIndexedDbPersistence() odrzuca obietnicę lub zgłasza wyjątek. Istnieje kilka możliwych powodów niepowodzenia. Możesz je rozpoznać po komunikacie code o błędzie.*: nieudany warunek wstępny: aplikacja jest już otwarta w innej karcie przeglądarki, a obsługa wielu kart nie jest włączona. * Nie zaimplementowano: przeglądarka jest niezgodna z implementacją trwałości offline.Pamiętaj, że nawet po awarii instancja Firestore będzie działać, ale zachowywanie offline zostanie wyłączone. |
enableNetwork(firestore) | Ponownie włącza korzystanie z sieci w przypadku instancji Firestore po wcześniejszym wywołaniu funkcji disableNetwork(). |
getPersistentCacheIndexManager(firestore) | Zwraca menedżer indeksu PersistentCache używany przez dany obiekt Firestore . Instancja PersistentCacheIndexManager lub null , jeśli lokalna pamięć trwała nie jest używana. |
loadBundle(firestore, bundleData) | Wczytuje pakiet Firestore do lokalnej pamięci podręcznej. |
namedQuery(firestore, name) | Odczytuje zapytanie Firestore z lokalnej pamięci podręcznej oznaczonej podaną nazwą.Nazwane zapytania są spakowane w pakiety po stronie serwera (wraz z uzyskanymi dokumentami) i ładowane do lokalnej pamięci podręcznej za pomocą loadBundle . W lokalnej pamięci podręcznej użyj tej metody, aby wyodrębnić zapytanie według nazwy. |
onSnapshotsInSync(firestore, obserwator) | Dodaje detektor zdarzenia synchronizacji zrzutów. Zdarzenie zrzutów ekranu zsynchronizowanych wskazuje, że uruchomili się wszystkie detektory, których dotyczy dana zmiana, nawet jeśli pojedyncza zmiana wygenerowana przez serwer dotyczy wielu detektorów.UWAGA: zdarzenie zrzutów podczas synchronizacji wskazuje jedynie, że detektory są zsynchronizowane, ale nie ma związku z tym, czy zrzuty są zsynchronizowane z serwerem. Użyj SnapshotMetadata w poszczególnych detektorach, aby określić, czy zrzut pochodzi z pamięci podręcznej, czy z serwera. |
onSnapshotsInSync(firestore, onSync) | Dodaje detektor zdarzenia synchronizacji zrzutów. Zdarzenie zrzutów ekranu zsynchronizowanych wskazuje, że uruchomili się wszystkie detektory, których dotyczy dana zmiana, nawet jeśli pojedyncza zmiana wygenerowana przez serwer dotyczy wielu detektorów.UWAGA: zdarzenie zrzutów podczas synchronizacji wskazuje jedynie, że detektory są zsynchronizowane, ale nie ma związku z tym, czy zrzuty są zsynchronizowane z serwerem. Użyj właściwości SnapshotMetadata w poszczególnych detektorach, aby określić, czy zrzut pochodzi z pamięci podręcznej czy z serwera. |
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. |
setIndexConfiguration(firestore, konfiguracja) | (BETA) Konfiguruje indeksowanie na potrzeby lokalnego wykonywania zapytań. Każda wcześniejsza konfiguracja indeksu zostanie zastąpiona. Identyfikator Promise zostaje rozwiązany po utrwaleniu konfiguracji indeksu.Same wpisy indeksu są tworzone asynchronicznie. Z zapytań, które wymagają indeksowania, możesz nadal korzystać, nawet jeśli indeksy nie są jeszcze dostępne. Wykonanie zapytania zacznie automatycznie korzystać z indeksu po zapisaniu wpisów indeksu.Indeksy są obsługiwane tylko w przypadku trwałości IndexedDb. Jeśli zasada IndexedDb nie jest włączona, każda konfiguracja indeksu jest ignorowana. |
setIndexConfiguration(firestore, json) | (BETA) Konfiguruje indeksowanie na potrzeby lokalnego wykonywania zapytań. Każda wcześniejsza konfiguracja indeksu zostanie zastąpiona. Identyfikator Promise zostaje rozwiązany po utrwaleniu konfiguracji indeksu.Same wpisy indeksu są tworzone asynchronicznie. Z zapytań, które wymagają indeksowania, możesz nadal korzystać, nawet jeśli indeksy nie są jeszcze dostępne. Wykonanie zapytania zacznie automatycznie korzystać z indeksu po zapisaniu wpisów indeksu.Indeksy są obsługiwane tylko w przypadku trwałości IndexedDb. Przed ustawieniem konfiguracji indeksu wywołaj enableIndexedDbPersistence() lub enableMultiTabIndexedDbPersistence() . Jeśli zasada IndexedDb nie jest włączona, każda konfiguracja indeksu jest ignorowana.Metoda akceptuje format JSON wyeksportowany przez interfejs wiersza poleceń Firebase (firebase firestore:indexes ). Jeśli format JSON jest nieprawidłowy, ta metoda zwraca błąd. |
terminate(firestore) | Zamyka podaną instancję Firestore.Po wywołaniu terminate() można używać tylko funkcji clearIndexedDbPersistence() . Każda inna funkcja wywoła FirestoreError .Aby uruchomić ponownie instancję po zakończeniu, utwórz nową instancję FirebaseFirestore z getFirestore().Zakończenie nie anuluje żadnych oczekujących zapisów, a żadne obietnice oczekujące na odpowiedź serwera nie zostaną zrealizowane. Jeśli masz włączoną trwałość, następnym razem, gdy uruchomisz tę instancję, wznowi ona wysyłanie tych zapisów do serwera.Uwaga: w normalnych okolicznościach wywołanie metody terminate() nie jest wymagane. Ta funkcja jest przydatna tylko wtedy, gdy chcesz wymusić zwolnienie wszystkich zasobów instancji lub w połączeniu z zasadą clearIndexedDbPersistence() w celu zniszczenia wszystkich stanów lokalnych między uruchomieniami testów. |
waitForPendingWrites(firestore) | Czeka, aż wszystkie aktualnie oczekujące zapisy aktywnego użytkownika zostaną potwierdzone przez backend.Zwrócona obietnica rozwiązuje natychmiast, jeśli nie ma żadnych oczekujących zapisów. W przeciwnym razie obietnica czeka na wszystkie wcześniej wykonane zapisy (w tym te zapisane w poprzedniej sesji aplikacji), ale nie czeka na zapisy dodane po wywołaniu funkcji. Jeśli chcesz poczekać na dodatkowe zapisy, zadzwoń ponownie pod numer waitForPendingWrites() .Wszystkie oczekujące obietnice waitForPendingWrites() są odrzucane podczas wprowadzania zmian dotyczących użytkownikó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.W przeciwieństwie do transakcji partie zapisu są zachowywane offline i dlatego są zalecane, gdy nie musisz uwarunkować zapisów na odczytywanych danych. |
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. |
memoryEagerGarbageCollector() | Tworzy instancję maszyny wirtualnej MemoryEagerGarbageCollector . Jest to również domyślny moduł do czyszczenia pamięci, chyba że wyraźnie określono inaczej. |
persistentMultipleTabManager() | Tworzy instancję maszyny wirtualnej PersistentMultipleTabManager . |
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ę o nazwie 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(indexManager, ...) | |
deleteAllPersistentCacheIndexes(indexManager) | Usuwa wszystkie indeksy trwałej pamięci podręcznej.Pamiętaj, że ta funkcja usuwa również indeksy wygenerowane przez zasadę setIndexConfiguration() , która została wycofana. |
disablePersistentCacheIndexAutoCreation(indexManager) | Zatrzymuje automatyczne tworzenie indeksów stałych pamięci podręcznej na potrzeby wykonywania zapytań lokalnych. Indeksy utworzone przez wywołanie metody enablePersistentCacheIndexAutoCreation() nadal obowiązują. |
enablePersistentCacheIndexAutoCreation(indexManager) | Umożliwia pakietowi SDK automatyczne tworzenie indeksów trwałych pamięci podręcznej na potrzeby lokalnego wykonywania zapytań, gdy pakiet SDK twierdzi, że indeksy pamięci podręcznej mogą zwiększyć wydajność.Ta funkcja jest domyślnie wyłączona. |
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, ...) | |
getAggregateFromServer(zapytanie, 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).Wynik otrzymany z serwera jest prezentowany bez zmian i bez uwzględniania stanu lokalnego. Oznacza to, że dokumenty w lokalnej pamięci podręcznej nie są brane pod uwagę. Podobnie lokalne modyfikacje nie są jeszcze synchronizowane z serwerem. Wyniki pobrane wcześniej nie są używane. Każde wywołanie tej funkcji wiąże się z połączeniem z serwerem w obie strony. |
getCountFromServer(zapytanie) | 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 zbiór wyników jest zbyt duży do pobrania w całości (tysiące dokumentów).Wynik otrzymany z serwera jest prezentowany bez zmian i bez uwzględniania stanu lokalnego. Oznacza to, że dokumenty w lokalnej pamięci podręcznej nie są brane pod uwagę. Podobnie lokalne modyfikacje nie są jeszcze synchronizowane z serwerem. Wyniki pobrane wcześniej nie są używane. Każde wywołanie tej funkcji wiąże się z połączeniem z serwerem w obie strony. |
getDocuments(zapytanie) | Wykonuje zapytanie i zwraca wyniki w formacie QuerySnapshot .Uwaga: jeśli to możliwe, getDocs() próbuje udostępnić aktualne dane, oczekując na dane z serwera, ale może zwrócić dane z pamięci podręcznej lub spowodować błąd, jeśli jesteś offline i nie ma połączenia z serwerem. Aby określić to zachowanie, wywołaj metodę getDocumentsFromCache() lub getDocumentsFromServer(). |
getDocumentsFromCache(zapytanie) | Wykonuje zapytanie i zwraca wyniki z pamięci podręcznej w postaci pliku QuerySnapshot . Zwraca pusty zestaw wyników, jeśli w pamięci podręcznej nie są obecnie przechowywane żadne dokumenty pasujące do zapytania. |
getDocumentsFromServer(zapytanie) | Wykonuje zapytanie i zwraca wyniki w postaci QuerySnapshot z serwera. Zwraca błąd, jeśli sieć jest niedostępna. |
onSnapshot(zapytanie, obserwator) | Dodaje detektor zdarzeń QuerySnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error . Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się. |
onSnapshot(zapytanie, opcje, obserwator) | Dodaje detektor zdarzeń QuerySnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error . Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się. |
onSnapshot(zapytanie, onNext, onError, onComplete) | Dodaje detektor zdarzeń QuerySnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error . Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się. |
onSnapshot(zapytanie; opcje, onNext, onError, onComplete) | Dodaje detektor zdarzeń QuerySnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error . Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się. |
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 do określonego elementu CollectionReference nowy dokument z podanymi danymi, automatycznie przypisując mu identyfikator dokumentu. |
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 . |
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ę ten DocumentReference .Uwaga: jeśli to możliwe, getDoc() próbuje udostępnić aktualne dane, oczekując na dane z serwera, ale może zwrócić dane z pamięci podręcznej lub zakończy się niepowodzeniem, jeśli jesteś offline i nie ma połączenia z serwerem. Aby określić takie zachowanie, wywołaj metodę getDocFromCache() lub getDocFromServer(). |
getDocFromCache(reference) | Odczytuje z pamięci podręcznej dokument, do którego odwołuje się ten element DocumentReference . Zwraca błąd, jeśli dokument nie jest obecnie w pamięci podręcznej. |
getDocFromServer(odwołanie) | Odczytuje z serwera dokument, do którego odwołuje się ten element DocumentReference . Zwraca błąd, jeśli sieć jest niedostępna. |
onSnapshot(odwołanie, obserwator) | Dodaje detektor zdarzeń DocumentSnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError albo przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów nigdy się nie kończy. |
onSnapshot(dokumentacja, opcje, obserwator) | Dodaje detektor zdarzeń DocumentSnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError albo przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów nigdy się nie kończy. |
onSnapshot(odwołanie, onNext, onError, onComplete) | Dodaje detektor zdarzeń DocumentSnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError albo przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów nigdy się nie kończy. |
onSnapshot(odwołanie; opcje, onNext, onError, onComplete) | Dodaje detektor zdarzeń DocumentSnapshot . Możesz przekazać indywidualne wywołania zwrotne onNext i onError albo przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next i error .UWAGA: można podać wywołanie zwrotne onCompletion , ale nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów nigdy się nie kończy. |
setDoc(odwołanie; dane) | Zapisuje dane w dokumencie, do którego odwołuje się ten element DocumentReference . Jeśli dokument jeszcze nie istnieje, zostanie utworzony. |
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. |
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 nieistniejącego dokumentu. |
updateDoc(odwołanie; pole; wartość; moreFieldsAndValues) | Aktualizuje pola w dokumencie, do którego odwołuje się określony 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 kropkami lub podając obiekty FieldPath . |
function(ustawienia, ...) | |
memoryLocalCache(ustawienia) | Tworzy instancję maszyny wirtualnej MemoryLocalCache . Możesz ustawić dla instancji wartość FirestoreSettings.cache , aby informować pakiet SDK, której warstwy pamięci podręcznej ma użyć. |
memoryLruGarbageCollector(ustawienia) | Tworzy instancję MemoryLruGarbageCollector .Rozmiar docelowy można określić jako część parametru ustawienia. Kolektor zacznie usuwać dokumenty, gdy rozmiar pamięci podręcznej przekroczy podany rozmiar. Domyślny rozmiar pamięci podręcznej to 40 MB (40 × 1024 × 1024 bajty). |
persistentLocalCache(ustawienia) | Tworzy instancję maszyny wirtualnej PersistentLocalCache . Możesz ustawić instancję na FirestoreSettings.cache , aby poinformować pakiet SDK, której warstwy pamięci podręcznej ma użyć.W środowisku Node.js nie można używać trwałej pamięci podręcznej. |
persistentSingleTabManager(ustawienia) | Tworzy instancję maszyny wirtualnej PersistentSingleTabManager . |
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]. |
LoadBundleTask | Reprezentuje zadanie wczytania pakietu Firestore. Podaje postęp wczytywania pakietu, a także zdarzenia ukończenia zadania i błędy.Interfejs API jest zgodny z Promise<LoadBundleTaskProgress> . |
PersistentCacheIndexManager | PersistentCacheIndexManager do konfigurowania indeksów trwałej pamięci podręcznej używanych do lokalnego wykonywania zapytań.Aby go użyć, wywołaj getPersistentCacheIndexManager() w celu uzyskania instancji. |
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 . |
SnapshotMetadata | Metadane dotyczące zrzutu opisujące jego stan. |
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. |
Zmiana dokumentu | DocumentChange reprezentuje zmianę w dokumentach pasujących do zapytania. Znajdziesz w nim informacje o dokumencie, którego dotyczy problem, i typie zmiany. |
DocumentData | Dane dokumentu (do użytku z funkcją setDoc()) składają się z pól zmapowanych na wartości. |
Funkcja eksperymentalnaLongPollingOptions | Opcje, które konfiguruje podstawowy transport sieciowy (WebChannel) pakietu SDK podczas korzystania z długich ankiet.Uwaga: ten interfejs ma charakter eksperymentalny. i mogą ulec zmianie.Zobacz FirestoreSettings.experimentalAutoDetectLongPolling , FirestoreSettings.experimentalForceLongPolling oraz FirestoreSettings.experimentalLongPollingOptions . |
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 Firestore | Określa niestandardowe konfiguracje instancji Cloud Firestore. Musisz je ustawić przed wywołaniem innych metod. |
Indeks | (BETA) Definicja indeksu Firestore w postaci pakietu SDK. |
IndexConfiguration | (BETA) Lista indeksów Firestore, które przyspieszają wykonywanie zapytań lokalnych.Opis formatu definicji indeksów znajdziesz w artykule Format JSON. |
Pole indeksu | (BETA) Pojedynczy element pola w konfiguracji indeksu. |
LoadBundleTaskProgress | Reprezentuje aktualizację postępu lub stan końcowy z wczytywania pakietów. |
MemoryCacheSettings (Ustawienia MemoryCacheSettings) | Obiekt ustawień służący do konfigurowania instancji MemoryLocalCache . |
MemoryEagerGarbageCollector | Moduł czyszczenia pamięci usuwa dokumenty, gdy nie są one częścią żadnych aktywnych zapytań i nie są do nich dołączone żadne lokalne mutacje.Ten kolektor próbuje zapewnić jak najmniejsze wykorzystanie pamięci przez pakiet SDK. Istnieje ryzyko, że dokumenty nie będą buforowane na potrzeby zapytań offline ani dla bezpośrednich zapytań do pamięci podręcznej.Aby utworzyć instancję tego kolektora, użyj funkcji fabrycznej. |
MemoryLocalCache | Udostępnia pakietowi SDK pamięć podręczną w pamięci. Jest to domyślna pamięć podręczna, o ile wyraźnie nie określono inaczej.Aby jej używać, utwórz instancję przy użyciu funkcji fabrycznej, a następnie ustaw dla niej wartość FirestoreSettings.cache i wywołaj funkcję initializeFirestore za pomocą obiektu ustawień. |
MemoryLruGarbageCollector | Moduł czyszczenia pamięci usuwa najrzadziej używane dokumenty w wielu partiach.Ten kolektor ma skonfigurowany rozmiar docelowy i przeprowadza zbieranie danych tylko wtedy, gdy dokumenty w pamięci podręcznej przekraczają rozmiar docelowy. Pozwala to uniknąć wykonywania zapytań powtórzonych dla tego samego zapytania lub dokumentu, co może spowodować większe wykorzystanie pamięci.Aby utworzyć instancję tego kolektora, użyj funkcji fabrycznej. |
Ustawienia trwałości | Ustawienia, które można przekazać do enableIndexedDbPersistence() , aby skonfigurować trwałość Firestore.Nie można używać trwałości w środowisku Node.js. |
PersistentCacheSettings, | Obiekt ustawień służący do konfigurowania instancji PersistentLocalCache .W środowisku Node.js nie można używać stałej pamięci podręcznej. |
PersistentLocalCache | Udostępnia pakiet SDK trwałą pamięć podręczną wspieraną przez IndexedDb.Aby użyć tej funkcji, utwórz instancję przy użyciu funkcji fabrycznej , a następnie ustaw instancję na FirestoreSettings.cache i wywołaj funkcję initializeFirestore za pomocą obiektu ustawień. |
PersistentMultipleTabManager | menedżera kart obsługującego wiele kart; Pakiet SDK synchronizuje zapytania i mutacje dokonane na wszystkich kartach za pomocą tego pakietu. |
PersistentSingleTabManager | menedżer kart obsługujący tylko jedną kartę – synchronizacja między kartami nie jest przeprowadzana. |
PersistentSingleTabManagerSettings (Ustawienia PersistentSingleTabManagerSettings) | Wpisz, aby skonfigurować instancję PersistentSingleTabManager . |
SnapshotListenOptions | Obiekt options, który można przekazać do onSnapshot() i QuerySnapshot.docChanges() w celu określenia typów zmian uwzględnianych w zbiorze wyników. |
SnapshotOptions (Opcje zrzutu) | opcje określające sposób pobierania danych z elementu DocumentSnapshot (np. oczekiwane działanie sygnatur czasowych serwera, które nie zostały jeszcze ustawione na ostateczną wartość). |
TransactionOptions (Opcje transakcji). | Opcje dostosowywania działania transakcji. |
Anuluj subskrypcję | Funkcja zwracana przez funkcję onSnapshot() , która po wywołaniu usuwa odbiornik. |
Zmienne
Zmienna | Opis |
---|---|
CACHE_SIZE_UNLIMITED | Stała używana do wskazywania, że usuwanie czyszczenia pamięci LRU powinno być wyłączone. W ustawieniach przekazywanych do instancji Firestore ustaw tę wartość jako cacheSizeBytes . |
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 |
DocumentChangeType | DocumentChange może mieć stan „dodano”, „usunięto” lub „zmodyfikowany”. |
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. |
FirestoreLocalCache | Typ sumy ze wszystkich obsługiwanej warstwy pamięci podręcznej pakietu SDK. |
ListenSource | Opisz źródło, którego słucha zapytanie.Ustaw jako default , aby uwzględniać zmiany zarówno w pamięci podręcznej, jak i na serwerze. Ustaw jako cache , aby nasłuchiwać zmian tylko w pamięci podręcznej. |
MemoryGarbageCollector | Typ ujednolicenia ze wszystkich obsługiwanych modułów czyszczenia pamięci dla lokalnej pamięci podręcznej. |
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. |
PersistentTabManager | Suma wszystkich dostępnych menedżerów kart. |
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 . |
TaskState | Reprezentuje stan zadań wczytywania pakietu.Oba „Błąd” i „Sukces” są w stanie utonięcia: zadanie zostanie przerwane lub zakończone i nie będzie więcej aktualizacji po ich zgłoszeniu. |
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 „<”, „<=', '==', '!=', '>=', „>”, „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:
Domyślne wystąpienie 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ę o nazwie 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:
Nazwa instancji Firestore podanej aplikacji.
zainicjujFirestore(aplikacja; ustawienia; identyfikator_bazy danych)
Inicjuje nową instancję Firestore z podanymi ustawieniami. 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: FirestoreSettings, databaseId?: string): Firestore;
Parametry
Parametr | Typ | Opis |
---|---|---|
aplikacja | Aplikacja Firebase | FirebaseApp, z którą zostanie powiązane wystąpienie Firestore. |
ustawienia | Ustawienia Firestore | Obiekt ustawień służący do konfigurowania instancji Firestore. |
identyfikator bazy danych | ciąg znaków | Nazwa bazy danych. |
Zwroty:
Nowo zainicjowana instancja Firestore.
funkcja(firestore, ...)
ClearIndexedDbPersistence(firestore)
Czyści pamięć trwałą. Obejmuje to oczekujące zapisy i dokumenty przechowywane w pamięci podręcznej.
Musi być wywoływana, gdy instancja Firestore nie została uruchomiona (po zamknięciu lub zainicjowaniu aplikacji). Podczas uruchamiania ta funkcja musi zostać wywołana przed innymi funkcjami (innymi niż initializeFirestore() i getFirestore()). Jeśli instancja Firestore jest nadal uruchomiona, obietnica zostanie odrzucona z kodem błędu failed-precondition
.
Podpis:
export declare function clearIndexedDbPersistence(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której ma zostać wyczyszczona trwałość. |
Zwroty:
Obietnica<void>
Promise
, który jest rozpoznawany po wyczyszczeniu pamięci trwałej. W przeciwnym razie obietnica zostanie odrzucona z powodu błędu.
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
disabledNetwork(firestore)
Wyłącza korzystanie z sieci przez tę instancję. Można ją ponownie włączyć za pomocą funkcji enableNetwork(). Gdy sieć jest wyłączona, wszystkie detektory zrzutów, wywołania getDoc()
lub getDocs()
będą zwracać wyniki z pamięci podręcznej, a wszystkie operacje zapisu będą umieszczane w kolejce do czasu przywrócenia sieci.
Podpis:
export declare function disableNetwork(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
Obietnica<void>
Komunikat Promise
, który jest usuwany po wyłączeniu sieci.
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.
allowIndexedDbPersistence(firestore, cookiesSettings)
Ta funkcja zostanie usunięta w przyszłej głównej wersji. Zamiast tego ustaw
FirestoreSettings.localCache
na instancjęPersistentLocalCache
, aby włączyć pamięć podręczną IndexedDb. Wywołanie tej funkcji, gdy jest już określony atrybutFirestoreSettings.localCache
, spowoduje zgłoszenie wyjątku.
Próbuje włączyć pamięć trwałą, jeśli to możliwe.
W przypadku niepowodzenia enableIndexedDbPersistence()
odrzuci obietnicę lub zgłosi wyjątek. Istnieje kilka możliwych przyczyn niepowodzenia. Rozpoznasz je po komunikacie code
o błędzie.
* nieudany warunek wstępny: aplikacja jest już otwarta w innej karcie przeglądarki. * nie zaimplementowano: przeglądarka jest niezgodna z implementacją trwałości offline.
Pamiętaj, że nawet po awarii instancja Firestore pozostanie gotowa do użycia, ale trwała w trybie offline zostanie wyłączona.
Trwałości nie można używać w środowisku Node.js.
Podpis:
export declare function enableIndexedDbPersistence(firestore: Firestore, persistenceSettings?: PersistenceSettings): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której chcesz włączyć trwałość. |
Ustawienia trwałości | Ustawienia trwałości | Opcjonalny obiekt ustawień umożliwiający skonfigurowanie trwałości. |
Zwroty:
Obietnica<void>
Promise
reprezentujący włączenie pamięci trwałej.
włączMultiTabIndexedDbPersistence(firestore)
Ta funkcja zostanie usunięta w przyszłej głównej wersji. Zamiast tego ustaw
FirestoreSettings.localCache
na instancjęPersistentLocalCache
, aby włączyć pamięć podręczną Indexdb. Wywołanie tej funkcji, gdy jest już określony atrybutFirestoreSettings.localCache
, spowoduje zgłoszenie wyjątku.
Próbuje włączyć pamięć trwałą z wieloma kartami, jeśli to możliwe. Jeśli ta opcja zostanie włączona na wszystkich kartach, wszystkie operacje współdzielą dostęp do trwałości lokalnej, w tym wspólne wykonywanie zapytań i kompensowane opóźnienia aktualizacji dokumentów lokalnych we wszystkich połączonych instancjach.
W przypadku niepowodzenia enableMultiTabIndexedDbPersistence()
odrzuci obietnicę lub zgłosi wyjątek. Istnieje kilka możliwych przyczyn niepowodzenia. Rozpoznasz je po komunikacie code
o błędzie.
* nieudany warunek wstępny: aplikacja jest już otwarta w innej karcie przeglądarki, a tryb wielu kart nie jest włączony. * nie zaimplementowano: przeglądarka jest niezgodna z implementacją trwałości offline.
Pamiętaj, że nawet po awarii instancja Firestore pozostanie gotowa do użycia, ale trwała w trybie offline zostanie wyłączona.
Podpis:
export declare function enableMultiTabIndexedDbPersistence(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której chcesz włączyć trwałość. |
Zwroty:
Obietnica<void>
Promise
reprezentujący włączenie pamięci trwałej.
allowNetwork(firestore)
Ponownie włącza korzystanie z sieci w przypadku instancji Firestore po wcześniejszym wywołaniu funkcji disableNetwork().
Podpis:
export declare function enableNetwork(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
Obietnica<void>
Promise
, który jest zamykany po włączeniu sieci.
getPersistentCacheIndexManager(firestore)
Zwraca menedżer indeksu PersistentCache używany przez dany obiekt Firestore
.
Instancja PersistentCacheIndexManager
lub null
, jeśli lokalna pamięć trwała nie jest używana.
Podpis:
export declare function getPersistentCacheIndexManager(firestore: Firestore): PersistentCacheIndexManager | null;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
PersistentCacheIndexManager | wartość null
loadBundle(firestore, bundleData)
Wczytuje pakiet Firestore do lokalnej pamięci podręcznej.
Podpis:
export declare function loadBundle(firestore: Firestore, bundleData: ReadableStream<Uint8Array> | ArrayBuffer | string): LoadBundleTask;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której mają być ładowane pakiety. |
pakietDane | ReadableStream<Uint8tablica> | SlateBuffer | tekst | Obiekt reprezentujący pakiet do wczytania. Prawidłowe obiekty to ArrayBuffer , ReadableStream<Uint8Array> lub string . |
Zwroty:
Obiekt LoadBundleTask
, który powiadamia rozmówców o aktualizacjach postępu oraz zdarzeniach ukończenia lub błędu. Można go użyć jako Promise<LoadBundleTaskProgress>
.
nameQuery(firestore, name)
Odczytuje zapytanie Firestore z lokalnej pamięci podręcznej o podanej nazwie.
Nazwane zapytania są spakowane w pakiety po stronie serwera (wraz z powiązanymi dokumentami) i ładowane do lokalnej pamięci podręcznej za pomocą loadBundle
. W lokalnej pamięci podręcznej użyj tej metody, aby wyodrębnić zapytanie według nazwy.
Podpis:
export declare function namedQuery(firestore: Firestore, name: string): Promise<Query | null>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, z której ma być odczytywane zapytanie. |
nazwa | ciąg znaków | Nazwa zapytania. |
Zwroty:
Obietnica <zapytanie | null>
Wartość Promise
, która została rozwiązana za pomocą zapytania lub null
.
onSnapshotsInSync(firestore, obserwator)
Dodaje detektor zdarzenia synchronizacji zrzutów. Zdarzenie zrzutów ekranu w synchronizacji wskazuje, że uruchomili się wszystkie detektory, których dotyczy dana zmiana, nawet jeśli pojedyncza zmiana wygenerowana przez serwer dotyczy wielu detektorów.
UWAGA: zdarzenie synchronizacji zrzutów wskazuje jedynie, że detektory są zsynchronizowane ze sobą, ale nie ma wpływu na to, czy te zrzuty są zsynchronizowane z serwerem. Użyj SnapshotMetadata w poszczególnych detektorach, aby określić, czy zrzut pochodzi z pamięci podręcznej, czy z serwera.
Podpis:
export declare function onSnapshotsInSync(firestore: Firestore, observer: {
next?: (value: void) => void;
error?: (error: FirestoreError) => void;
complete?: () => void;
}): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore na potrzeby synchronizowania zrzutów. |
obserwator | { następny?: (wartość: void) => void; ? (błąd: FirestoreError) => void; zakończono?: () => void; | Pojedynczy obiekt zawierający wywołania zwrotne next i error . |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshotsInSync(firestore, onSync)
Dodaje detektor zdarzenia synchronizacji zrzutów. Zdarzenie zrzutów ekranu w synchronizacji wskazuje, że uruchomili się wszystkie detektory, których dotyczy dana zmiana, nawet jeśli pojedyncza zmiana wygenerowana przez serwer dotyczy wielu detektorów.
UWAGA: zdarzenie synchronizacji zrzutów wskazuje jedynie, że detektory są zsynchronizowane ze sobą, ale nie ma wpływu na to, czy te zrzuty są zsynchronizowane z serwerem. Użyj właściwości SnapshotMetadata
w poszczególnych detektorach, aby określić, czy zrzut pochodzi z pamięci podręcznej czy z serwera.
Podpis:
export declare function onSnapshotsInSync(firestore: Firestore, onSync: () => void): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore do synchronizowania zrzutów. |
onSync | () => nieważne | Wywołanie zwrotne, które ma być wywoływane za każdym razem, gdy wszystkie detektory zrzutów są ze sobą zsynchronizowane. |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
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.
setIndexConfiguration(firestore, konfiguracja)
.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.
Zamiast ręcznie tworzyć indeksy pamięci podręcznej, rozważ użycie metody
enablePersistentCacheIndexAutoCreation()
, aby umożliwić pakietowi SDK podjęcie decyzji, czy utworzyć indeksy pamięci podręcznej dla zapytań wykonywanych lokalnie.
Konfiguruje indeksowanie na potrzeby lokalnego wykonywania zapytań. Każda wcześniejsza konfiguracja indeksu zostanie zastąpiona. Promise
rozwiązuje problem po utrwaleniu konfiguracji indeksu.
Wpisy indeksu są tworzone asynchronicznie. Z zapytań, które wymagają indeksowania, możesz nadal korzystać, nawet jeśli indeksy nie są jeszcze dostępne. Wykonanie zapytania zacznie automatycznie korzystać z indeksu po zapisaniu wpisów indeksu.
Indeksy są obsługiwane tylko z trwałością IndexedDb. Jeśli zasada IndexedDb nie jest włączona, każda konfiguracja indeksu jest ignorowana.
Podpis:
export declare function setIndexConfiguration(firestore: Firestore, configuration: IndexConfiguration): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której mają być skonfigurowane indeksy. |
konfiguracja | IndexConfiguration | Definicja indeksu. |
Zwroty:
Obietnica<void>
Wartość Promise
, która wygasa po skonfigurowaniu wszystkich indeksów.
Wyjątki
FirestoreError, jeśli format JSON jest nieprawidłowy.
setIndexConfiguration(firestore, json)
.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.
Zamiast ręcznie tworzyć indeksy pamięci podręcznej, rozważ użycie metody
enablePersistentCacheIndexAutoCreation()
, aby umożliwić pakietowi SDK podjęcie decyzji, czy utworzyć indeksy pamięci podręcznej dla zapytań wykonywanych lokalnie.
Konfiguruje indeksowanie na potrzeby lokalnego wykonywania zapytań. Każda wcześniejsza konfiguracja indeksu zostanie zastąpiona. Promise
rozwiązuje problem po utrwaleniu konfiguracji indeksu.
Wpisy indeksu są tworzone asynchronicznie. Z zapytań, które wymagają indeksowania, możesz nadal korzystać, nawet jeśli indeksy nie są jeszcze dostępne. Wykonanie zapytania zacznie automatycznie korzystać z indeksu po zapisaniu wpisów indeksu.
Indeksy są obsługiwane tylko z trwałością IndexedDb. Przed ustawieniem konfiguracji indeksu wywołaj enableIndexedDbPersistence()
lub enableMultiTabIndexedDbPersistence()
. Jeśli zasada IndexedDb nie jest włączona, każda konfiguracja indeksu jest ignorowana.
Metoda akceptuje format JSON wyeksportowany przez interfejs wiersza poleceń Firebase (firebase firestore:indexes
). Jeśli format JSON jest nieprawidłowy, ta metoda zwraca błąd.
Podpis:
export declare function setIndexConfiguration(firestore: Firestore, json: string): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore | Instancja Firestore, dla której mają być skonfigurowane indeksy. |
JSON | ciąg znaków | Format JSON wyeksportowany przez interfejs wiersza poleceń Firebase. |
Zwroty:
Obietnica<void>
Wartość Promise
, która wygasa po skonfigurowaniu wszystkich indeksów.
Wyjątki
FirestoreError, jeśli format JSON jest nieprawidłowy.
zakończyć(firestore)
Zamyka podaną instancję Firestore.
Po wywołaniu funkcji terminate()
można używać tylko funkcji clearIndexedDbPersistence()
. Każda inna funkcja zgłasza FirestoreError
.
Aby uruchomić ponownie po zakończeniu działania, utwórz nową instancję FirebaseFirestore z funkcją getFirestore().
Zakończenie nie powoduje anulowania oczekujących zapisów, a wszystkie obietnice, które oczekują na odpowiedź z serwera, nie zostaną zrealizowane. Jeśli masz włączoną trwałość, po następnym uruchomieniu tej instancji wznowi ona wysyłanie tych zapisów do serwera.
Podpis:
export declare function terminate(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
Obietnica<void>
Promise
, który jest rozstrzygnięty po zakończeniu działania instancji.
waitForPendingWrites(firestore)
Czekam, aż wszystkie aktualnie oczekujące zapisy aktywnego użytkownika zostaną potwierdzone przez backend.
Jeśli nie ma zaległych zapisów, zwrócona obietnica wygasa natychmiast. W przeciwnym razie obietnica czeka na wszystkie wcześniej wykonane zapisy (w tym te zapisane w poprzedniej sesji aplikacji), ale nie czeka na zapisy dodane po wywołaniu funkcji. Jeśli chcesz poczekać na dodatkowe zapisy, zadzwoń ponownie pod numer waitForPendingWrites()
.
Wszystkie zaległe obietnice waitForPendingWrites()
są odrzucane podczas wprowadzania zmian dotyczących użytkownika.
Podpis:
export declare function waitForPendingWrites(firestore: Firestore): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
Obietnica<void>
Promise
, który rozwiązuje się, gdy wszystkie aktualnie oczekujące zapisy zostaną potwierdzone przez backend.
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.
W przeciwieństwie do transakcji partie zapisu są zachowywane offline, dlatego są zalecane, gdy nie musisz uwarunkować zapisów na odczytywanych danych.
Podpis:
export declare function writeBatch(firestore: Firestore): WriteBatch;
Parametry
Parametr | Typ | Opis |
---|---|---|
firestore | Firestore |
Zwroty:
Element 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:
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:
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:
Domyślne wystąpienie Firestore aplikacji domyślnej.
PamięciEagerGarbageCollector()
Tworzy instancję MemoryEagerGarbageCollector
. Jest to również domyślny moduł do czyszczenia pamięci, chyba że wyraźnie określono inaczej.
Podpis:
export declare function memoryEagerGarbageCollector(): MemoryEagerGarbageCollector;
Zwroty:
StałyMultipleTabManager()
Tworzy instancję PersistentMultipleTabManager
.
Podpis:
export declare function persistentMultipleTabManager(): PersistentMultipleTabManager;
Zwroty:
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:
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ę o nazwie 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(databaseId: string): Firestore;
Parametry
Parametr | Typ | Opis |
---|---|---|
identyfikator bazy danych | ciąg znaków | Nazwa bazy danych. |
Zwroty:
Instancja Firestore o nazwie domyślnej 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:
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:
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:
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. "<", "<=", "==", "<", "<=", "!="). |
wartość | nieznany | Wartość do porównania |
Zwroty:
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:
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:
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:
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:
Typ QueryStartAtConstraint przekazywany do funkcji query()
.
function(indexManager, ...)
deleteAllPersistentCacheIndexes(indexManager)
Usuwa wszystkie indeksy stałej pamięci podręcznej.
Pamiętaj, że ta funkcja usuwa też indeksy wygenerowane przez wycofaną wersję setIndexConfiguration()
.
Podpis:
export declare function deleteAllPersistentCacheIndexes(indexManager: PersistentCacheIndexManager): void;
Parametry
Parametr | Typ | Opis |
---|---|---|
menedżer indeksu | PersistentCacheIndexManager |
Zwroty:
nieważne
disabledPersistentCacheIndexAutoCreation(indexManager)
Zatrzymuje automatyczne tworzenie indeksów stałych pamięci podręcznej na potrzeby wykonywania zapytań lokalnych. Indeksy utworzone przez wywołanie metody enablePersistentCacheIndexAutoCreation()
nadal obowiązują.
Podpis:
export declare function disablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;
Parametry
Parametr | Typ | Opis |
---|---|---|
menedżer indeksu | PersistentCacheIndexManager |
Zwroty:
nieważne
włączPersistentCacheIndexAutoCreation(indexManager)
Umożliwia pakietowi SDK automatyczne tworzenie indeksów trwałej pamięci podręcznej na potrzeby lokalnego wykonywania zapytań, jeśli pakiet SDK uważa, że indeksy pamięci podręcznej mogą zwiększyć wydajność.
Ta funkcja jest domyślnie wyłączona.
Podpis:
export declare function enablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;
Parametry
Parametr | Typ | Opis |
---|---|---|
menedżer indeksu | PersistentCacheIndexManager |
Zwroty:
nieważne
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:
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:
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:
|
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_INTEGER
–Number.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:
Wieża FieldValue
do użycia w wywołaniu z setDoc()
lub updateDoc()
funkcja(zapytanie; ...)
getAggregateFromServer(zapytanie, agregujące specyfikacje)
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).
Wynik odebrany z serwera jest prezentowany bez zmian i bez uwzględniania stanu lokalnego. Oznacza to, że dokumenty w lokalnej pamięci podręcznej nie są brane pod uwagę. Podobnie lokalne modyfikacje nie są jeszcze synchronizowane z serwerem. Wyniki pobrane wcześniej nie są używane. Każde wywołanie tej funkcji wiąże się z połączeniem z serwerem w obie strony.
Podpis:
export declare function getAggregateFromServer<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 getAggregateFromServer(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;
getCountFromServer(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).
Wynik odebrany z serwera jest prezentowany bez zmian i bez uwzględniania stanu lokalnego. Oznacza to, że dokumenty w lokalnej pamięci podręcznej nie są brane pod uwagę. Podobnie lokalne modyfikacje nie są jeszcze synchronizowane z serwerem. Wyniki pobrane wcześniej nie są używane. Każde wywołanie tej funkcji wiąże się z połączeniem z serwerem w obie strony.
Podpis:
export declare function getCountFromServer<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 jako QuerySnapshot
.
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> |
Zwroty:
Obietnica<QuerySnapshot<AppModelType, DbModelType>>
Pole Promise
, które zostanie rozstrzygnięte na podstawie wyników zapytania.
getDocumentsFromCache(zapytanie)
Wykonuje zapytanie i zwraca wyniki z pamięci podręcznej w postaci pliku QuerySnapshot
. Zwraca pusty zestaw wyników, jeśli w pamięci podręcznej nie są obecnie przechowywane żadne dokumenty pasujące do zapytania.
Podpis:
export declare function getDocsFromCache<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> |
Zwroty:
Obietnica<QuerySnapshot<AppModelType, DbModelType>>
Pole Promise
, które zostanie rozstrzygnięte na podstawie wyników zapytania.
getDocumentsFromServer(zapytanie)
Wykonuje zapytanie i zwraca wyniki w postaci QuerySnapshot
z serwera. Zwraca błąd, jeśli sieć jest niedostępna.
Podpis:
export declare function getDocsFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> |
Zwroty:
Obietnica<QuerySnapshot<AppModelType, DbModelType>>
Pole Promise
, które zostanie rozstrzygnięte na podstawie wyników zapytania.
onSnapshot(zapytanie; obserwator)
Dodaje detektor zdarzeń QuerySnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
. Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, observer: {
next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
error?: (error: FirestoreError) => void;
complete?: () => void;
}): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> | Zapytanie, które ma zostać odsłuchane. |
obserwator | { następny?: (zrzut: QuerySnapshot<AppModelType, DbModelType>) => void; ? (błąd: FirestoreError) => void; zakończono?: () => void; | Pojedynczy obiekt zawierający wywołania zwrotne next i error . |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(zapytanie, opcje, obserwator)
Dodaje detektor zdarzeń QuerySnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
. Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
error?: (error: FirestoreError) => void;
complete?: () => void;
}): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> | Zapytanie, które ma zostać odsłuchane. |
opcje | SnapshotListenOptions | Opcje sterujące słuchaniem. |
obserwator | { następny?: (zrzut: QuerySnapshot<AppModelType, DbModelType>) => void; ? (błąd: FirestoreError) => void; zakończono?: () => void; | Pojedynczy obiekt zawierający wywołania zwrotne next i error . |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(zapytanie, onNext, onError, onComplete)
Dodaje detektor zdarzeń QuerySnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
. Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> | Zapytanie, które ma zostać odsłuchane. |
onNext | (zrzut: QuerySnapshot<AppModelType, DbModelType>) => nieważne | Oddzwanianie wykonywane za każdym razem, gdy dostępny jest nowy numer QuerySnapshot . |
onError | (błąd: FirestoreError) => nieważne | Wywołanie zwrotne w przypadku niepowodzenia lub anulowania nasłuchiwania. Nie będą już wykonywane żadne wywołania zwrotne. |
po ukończeniu | () => nieważne | Można podać, ale nie zostanie wywołany, ponieważ strumienie nigdy się nie kończą. |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(zapytanie; opcje, onNext, onError, onComplete)
Dodaje detektor zdarzeń QuerySnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
. Detektor można anulować przez wywołanie funkcji, która jest zwracana po wywołaniu funkcji onSnapshot
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
zapytanie | Zapytanie<AppModelType, DbModelType> | Zapytanie, które ma zostać odsłuchane. |
opcje | SnapshotListenOptions | Opcje sterujące słuchaniem. |
onNext | (zrzut: QuerySnapshot<AppModelType, DbModelType>) => nieważne | Oddzwanianie wykonywane za każdym razem, gdy dostępny jest nowy numer QuerySnapshot . |
onError | (błąd: FirestoreError) => nieważne | Wywołanie zwrotne w przypadku niepowodzenia lub anulowania nasłuchiwania. Nie będą już wykonywane żadne wywołania zwrotne. |
po ukończeniu | () => nieważne | Można podać, ale nie zostanie wywołany, ponieważ strumienie nigdy się nie kończą. |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
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.
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>>
Działanie Promise
zakończyło się ciągiem DocumentReference
wskazującym nowo utworzony dokument po zapisaniu go w backendzie (nie zostanie on rozwiązany w trybie offline).
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
.
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>
Obietnica została zrealizowana, gdy dokument został usunięty z backendu (pamiętaj, że nie zostanie rozpoznana, gdy jesteś offline).
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ę DocumentReference
.
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.
getDocFromCache(odwołanie)
Odczytuje z pamięci podręcznej dokument, do którego odwołuje się ten element DocumentReference
. Zwraca błąd, jeśli dokument nie jest obecnie w pamięci podręcznej.
Podpis:
export declare function getDocFromCache<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> |
Zwroty:
Promise<DocumentSnapshot<AppModelType, DbModelType>>
Pole Promise
zostało rozpoznane jako DocumentSnapshot
zawierające bieżącą zawartość dokumentu.
getDocFromServer(odwołanie)
Odczytuje z serwera dokument, do którego odwołuje się ten element DocumentReference
. Zwraca błąd, jeśli sieć jest niedostępna.
Podpis:
export declare function getDocFromServer<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> |
Zwroty:
Promise<DocumentSnapshot<AppModelType, DbModelType>>
Pole Promise
zostało rozpoznane jako DocumentSnapshot
zawierające bieżącą zawartość dokumentu.
onSnapshot(odwołanie; obserwator)
Dodaje detektor zdarzeń DocumentSnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, observer: {
next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
error?: (error: FirestoreError) => void;
complete?: () => void;
}): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> | Odwołanie do dokumentu, który ma zostać odsłuchany. |
obserwator | { następny?: (zrzut: DocumentSnapshot<AppModelType, DbModelType>) => void; ? (błąd: FirestoreError) => void; zakończono?: () => void; | Pojedynczy obiekt zawierający wywołania zwrotne next i error . |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(odwołanie; opcje; obserwator)
Dodaje detektor zdarzeń DocumentSnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
error?: (error: FirestoreError) => void;
complete?: () => void;
}): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> | Odwołanie do dokumentu, który ma zostać odsłuchany. |
opcje | SnapshotListenOptions | Opcje sterujące słuchaniem. |
obserwator | { następny?: (zrzut: DocumentSnapshot<AppModelType, DbModelType>) => void; ? (błąd: FirestoreError) => void; zakończono?: () => void; | Pojedynczy obiekt zawierający wywołania zwrotne next i error . |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(odwołanie; onNext, onError, onComplete)
Dodaje detektor zdarzeń DocumentSnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> | Odwołanie do dokumentu, który ma zostać odsłuchany. |
onNext | (zrzut: DocumentSnapshot<AppModelType, DbModelType>) => nieważne | Oddzwanianie wykonywane za każdym razem, gdy dostępny jest nowy numer DocumentSnapshot . |
onError | (błąd: FirestoreError) => nieważne | Wywołanie zwrotne w przypadku niepowodzenia lub anulowania nasłuchiwania. Nie będą już wykonywane żadne wywołania zwrotne. |
po ukończeniu | () => nieważne | Można podać, ale nie zostanie wywołany, ponieważ strumienie nigdy się nie kończą. |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
onSnapshot(odwołanie; opcje, onNext, onError, onComplete)
Dodaje detektor zdarzeń DocumentSnapshot
. Możesz przekazać indywidualne wywołania zwrotne onNext
i onError
lub przekazać pojedynczy obiekt obserwatora z wywołaniami zwrotnymi next
i error
.
UWAGA: chociaż można zapewnić wywołanie zwrotne onCompletion
, nie zostanie ono nigdy wywołane, ponieważ strumień zrzutów jest niekończący się.
Podpis:
export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;
Parametry
Parametr | Typ | Opis |
---|---|---|
odniesienie | DocumentReference<AppModelType, DbModelType> | Odwołanie do dokumentu, który ma zostać odsłuchany. |
opcje | SnapshotListenOptions | Opcje sterujące słuchaniem. |
onNext | (zrzut: DocumentSnapshot<AppModelType, DbModelType>) => nieważne | Oddzwanianie wykonywane za każdym razem, gdy dostępny jest nowy numer DocumentSnapshot . |
onError | (błąd: FirestoreError) => nieważne | Wywołanie zwrotne w przypadku niepowodzenia lub anulowania nasłuchiwania. Nie będą już wykonywane żadne wywołania zwrotne. |
po ukończeniu | () => nieważne | Można podać, ale nie zostanie wywołany, ponieważ strumienie nigdy się nie kończą. |
Zwroty:
Funkcja anulowania subskrypcji, którą można wywołać w celu anulowania detektora zrzutów.
setDoc(odwołanie; dane)
Zapisuje informacje w dokumencie, do którego odwołuje się ten DocumentReference
. Jeśli dokument jeszcze nie istnieje, zostanie utworzony.
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>
Pole Promise
zostało rozwiązane po zapisaniu danych w backendzie (pamiętaj, że nie zostanie rozpoznane, gdy jesteś offline).
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.
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>
Obietnica została zrealizowana po zapisaniu danych w backendzie (pamiętaj, że nie zostanie rozpoznana, gdy jesteś offline).
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.
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>
Pole Promise
zostało rozwiązane po zapisaniu danych w backendzie (pamiętaj, że nie zostanie rozpoznane, gdy jesteś offline).
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
.
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>
Pole Promise
zostało rozwiązane po zapisaniu danych w backendzie (pamiętaj, że nie zostanie rozpoznane, gdy jesteś offline).
funkcja(ustawienia, ...)
storageLocalCache(ustawienia)
Tworzy instancję MemoryLocalCache
. Możesz ustawić dla instancji wartość FirestoreSettings.cache
, aby informować pakiet SDK, której warstwy pamięci podręcznej ma użyć.
Podpis:
export declare function memoryLocalCache(settings?: MemoryCacheSettings): MemoryLocalCache;
Parametry
Parametr | Typ | Opis |
---|---|---|
ustawienia | MemoryCacheSettings (Ustawienia MemoryCacheSettings) |
Zwroty:
PamięciLruGarbageCollector(ustawienia)
Tworzy instancję MemoryLruGarbageCollector
.
Rozmiar docelowy można określić w parametrze ustawienia. Kolektor zacznie usuwać dokumenty, gdy rozmiar pamięci podręcznej przekroczy podany rozmiar. Domyślny rozmiar pamięci podręcznej to 40 MB (40 × 1024 × 1024 bajty).
Podpis:
export declare function memoryLruGarbageCollector(settings?: {
cacheSizeBytes?: number;
}): MemoryLruGarbageCollector;
Parametry
Parametr | Typ | Opis |
---|---|---|
ustawienia | {CacheSizeBytes?: number; |
Zwroty:
trwała pamięć podręczna(ustawienia)
Tworzy instancję PersistentLocalCache
. Możesz ustawić dla instancji wartość FirestoreSettings.cache
, aby informować pakiet SDK, której warstwy pamięci podręcznej ma użyć.
stałej pamięci podręcznej nie można używać w środowisku Node.js.
Podpis:
export declare function persistentLocalCache(settings?: PersistentCacheSettings): PersistentLocalCache;
Parametry
Parametr | Typ | Opis |
---|---|---|
ustawienia | PersistentCacheSettings, |
Zwroty:
StabilSingleTabManager(ustawienia)
Tworzy instancję PersistentSingleTabManager
.
Podpis:
export declare function persistentSingleTabManager(settings: PersistentSingleTabManagerSettings | undefined): PersistentSingleTabManager;
Parametry
Parametr | Typ | Opis |
---|---|---|
ustawienia | PersistentSingleTabManagerSettings | nie zdefiniowano | Konfiguruje utworzony menedżer kart. |
Zwroty:
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:
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:
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:
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:
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:
Nowy obiekt VectorValue
utworzony na podstawie kopii podanej tablicy liczb.
CACHE_SIZE_UNLIMITED
Stała używana do wskazywania, że usuwanie czyszczenia pamięci LRU powinno być wyłączone. W ustawieniach przekazywanych do instancji Firestore ustaw tę wartość jako cacheSizeBytes
.
Podpis:
CACHE_SIZE_UNLIMITED = -1
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;
Typ zmiany dokumentu
DocumentChange
może mieć stan „dodano”, „usunięto” lub „zmodyfikowany”.
Podpis:
export declare type DocumentChangeType = 'added' | 'removed' | 'modified';
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';
Lokalna pamięć podręczna Firestore
Typ sumy ze wszystkich obsługiwanej warstwy pamięci podręcznej pakietu SDK.
Podpis:
export declare type FirestoreLocalCache = MemoryLocalCache | PersistentLocalCache;
ListenSource,
Opisz źródło, którego słucha zapytanie.
Ustaw jako default
, aby wykrywać zmiany zarówno w pamięci podręcznej, jak i na serwerze. Ustaw jako cache
, aby nasłuchiwać zmian tylko w pamięci podręcznej.
Podpis:
export declare type ListenSource = 'default' | 'cache';
MemoryGarbageCollector
Typ ujednolicenia ze wszystkich obsługiwanych modułów czyszczenia pamięci dla lokalnej pamięci podręcznej.
Podpis:
export declare type MemoryGarbageCollector = MemoryEagerGarbageCollector | MemoryLruGarbageCollector;
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);
Menedżer kart PersistentTab
Suma wszystkich dostępnych menedżerów kart.
Podpis:
export declare type PersistentTabManager = PersistentSingleTabManager | PersistentMultipleTabManager;
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. QueryNonFilterConstraint
Identyfikatory 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>;
};
Stan zadania
Reprezentuje stan zadań wczytywania pakietu.
Oba typy błędów i „Sukces” są w stanie utonięcia: zadanie zostanie przerwane lub zakończone i nie będzie więcej aktualizacji po ich zgłoszeniu.
Podpis:
export declare type TaskState = 'Error' | 'Running' | 'Success';
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 „<”, „<=', '==', '!=', '>=', „>”, „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);