Funzioni
Funzione | Descrizione |
---|---|
funzione(app, ...) | |
getFirestore(app) | Restituisce l'istanza Firestore predefinita esistente associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite. |
getFirestore(app, ID database) | (BETA) Restituisce l'istanza Firestore esistente associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite. |
inizializzaFirestore(app, impostazioni) | Inizializza una nuova istanza di Cloud Firestore con le impostazioni fornite. Può essere chiamato solo prima di qualsiasi altra funzione, incluso getFirestore() . Se le impostazioni personalizzate sono vuote, questa funzione equivale a chiamare getFirestore() . |
inizializzaFirestore(app, impostazioni, databaseId) | (BETA) Inizializza una nuova istanza di Cloud Firestore con le impostazioni fornite. Può essere chiamato solo prima di qualsiasi altra funzione, incluso getFirestore() . Se le impostazioni personalizzate sono vuote, questa funzione equivale a chiamare getFirestore() . |
funzione(firestore, ...) | |
collection(firestore, percorso, pathSegments) | Ottiene un'istanza CollectionReference che fa riferimento alla raccolta nel percorso assoluto specificato. |
collectionGroup(firestore, collectionId) | Crea e restituisce una nuova istanza Query che include tutti i documenti nel database contenuti in una raccolta o sottoraccolta con il collectionId specificato. |
connectFirestoreEmulator(firestore, host, porta, opzioni) | Modifica questa istanza per comunicare con l'emulatore Cloud Firestore. Nota: questo deve essere chiamato prima che questa istanza venga utilizzata per eseguire qualsiasi operazione. |
doc(firestore, percorso, percorsiSegmenti) | Ottiene un'istanza DocumentReference che fa riferimento al documento nel percorso assoluto specificato. |
runTransaction(firestore, updateFunction, opzioni) | Esegue la updateFunction specificata e quindi tenta di confermare le modifiche applicate all'interno della transazione. Se un documento letto all'interno della transazione è cambiato, Cloud Firestore riprova a utilizzare updateFunction . Se il commit non riesce dopo 5 tentativi, la transazione fallisce. Il numero massimo di scritture consentite in una singola transazione è 500. |
terminare(firestore) | Termina l'istanza Firestore fornita. Dopo aver chiamato terminate() è possibile utilizzare solo le funzioni clearIndexedDbPersistence() . Qualsiasi altra funzione genererà un FirestoreError . La terminazione non annulla alcuna scrittura in sospeso e qualsiasi promessa in attesa di risposta dal server non verrà risolta. Per riavviare dopo la terminazione, crea una nuova istanza di Firestore con getFirestore() . Nota: in circostanze normali, la chiamata terminate() non è necessaria. Questa funzione è utile solo quando vuoi forzare questa istanza a rilasciare tutte le sue risorse o in combinazione con clearIndexedDbPersistence() per garantire che tutto lo stato locale venga distrutto tra le esecuzioni dei test. |
writeBatch(firestore) | Crea un batch di scrittura, utilizzato per eseguire più scritture come un'unica operazione atomica. Il numero massimo di scritture consentite in un singolo WriteBatch è 500. Il risultato di queste scritture si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, la scrittura fallisce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
funzione() | |
contare() | Crea un oggetto AggregateField che può essere utilizzato per calcolare il conteggio dei documenti nel set di risultati di una query. |
eliminacampo() | Restituisce una sentinella da utilizzare con updateDoc() o setDoc() con {merge: true} per contrassegnare un campo per l'eliminazione. |
IDdocumento() | Restituisce una sentinella speciale FieldPath per fare riferimento all'ID di un documento. Può essere utilizzato nelle query per ordinare o filtrare in base all'ID del documento. |
getFirestore() | Restituisce l'istanza Firestore predefinita esistente associata al FirebaseApp predefinito . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite. |
serverTimestamp() | Restituisce una sentinella utilizzata con setDoc() o updateDoc() per includere un timestamp generato dal server nei dati scritti. |
funzione(IDdatabase, ...) | |
getFirestore(IDdatabase) | (BETA) Restituisce l'istanza Firestore esistente associata alla FirebaseApp predefinita . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite. |
funzione(elementi, ...) | |
arrayRimuovi(elementi) | Restituisce un valore speciale che può essere utilizzato con setDoc() o che indica al server di rimuovere gli elementi specificati da qualsiasi valore dell'array già esistente sul server. Tutte le istanze di ciascun elemento specificato verranno rimosse dall'array. Se il campo da modificare non è già un array verrà sovrascritto con un array vuoto. |
arrayUnione(elementi) | Restituisce un valore speciale che può essere utilizzato con setDoc() o updateDoc() che dice al server di unire gli elementi specificati con qualsiasi valore dell'array già esistente sul server. Ogni elemento specificato che non esiste già nell'array verrà aggiunto alla fine. Se il campo da modificare non è già un array verrà sovrascritto con un array contenente esattamente gli elementi specificati. |
funzione(campo, ...) | |
media(campo) | Crea un oggetto AggregateField che può essere utilizzato per calcolare la media di un campo specificato su un intervallo di documenti nel set di risultati di una query. |
somma(campo) | Crea un oggetto AggregateField che può essere utilizzato per calcolare la somma di un campo specificato su un intervallo di documenti nel set di risultati di una query. |
funzione(percorsocampo, ...) | |
ordinePer(campoPercorso, direzioneStr) | Crea un oggetto QueryOrderByConstraint che ordina il risultato della query in base al campo specificato, facoltativamente in ordine decrescente anziché crescente. Nota: i documenti che non contengono il campo specificato non saranno presenti nel risultato della query. |
dove(percorsocampo, opStr, valore) | Crea un oggetto QueryFieldFilterConstraint che impone che i documenti contengano il campo specificato e che il valore soddisfi il vincolo di relazione fornito. |
funzione(valoricampo, ...) | |
endAt(valoricampo) | Crea un oggetto QueryEndAtConstraint che modifica il set di risultati in modo che termini nei campi forniti rispetto all'ordine della query. L'ordine dei valori dei campi deve corrispondere all'ordine delle clausole dell'ordine della query. |
endBefore(valoricampo) | Crea un oggetto QueryEndAtConstraint che modifica il set di risultati in modo che termini prima dei campi forniti rispetto all'ordine della query. L'ordine dei valori dei campi deve corrispondere all'ordine delle clausole dell'ordine della query. |
startAfter(valoricampo) | Crea un oggetto QueryStartAtConstraint che modifica il set di risultati in modo che inizi dopo i campi forniti rispetto all'ordine della query. L'ordine dei valori dei campi deve corrispondere all'ordine delle clausole dell'ordine della query. |
inizioAt(valoricampo) | Crea un oggetto QueryStartAtConstraint che modifica il set di risultati in modo che inizi dai campi forniti rispetto all'ordine della query. L'ordine dei valori dei campi deve corrispondere all'ordine delle clausole dell'ordine della query. |
funzione(sinistra, ...) | |
aggregateFieldEqual(sinistra, destra) | Confronta due "AggregateField ` istanze di uguaglianza. |
aggregateQuerySnapshotEqual(sinistra, destra) | Confronta due istanze AggregateQuerySnapshot per verificarne l'uguaglianza. Due istanze AggregateQuerySnapshot sono considerate "uguali" se hanno query sottostanti che confrontano uguali e gli stessi dati. |
queryEqual(sinistra, destra) | Restituisce true se le query fornite puntano alla stessa raccolta e applicano gli stessi vincoli. |
refEqual(sinistra, destra) | Restituisce vero se i riferimenti forniti sono uguali. |
snapshotUguale(sinistra, destra) | Restituisce vero se gli snapshot forniti sono uguali. |
funzione(limite, ...) | |
limite (limite) | Crea un QueryLimitConstraint che restituisce solo i primi documenti corrispondenti. |
limite all'ultimo(limite) | Crea un QueryLimitConstraint che restituisce solo gli ultimi documenti corrispondenti. È necessario specificare almeno una clausola orderBy per le query limitToLast , altrimenti verrà generata un'eccezione durante l'esecuzione. |
funzione(livellolog, ...) | |
setLogLevel(logLevel) | Imposta il livello di dettaglio dei log di Cloud Firestore (debug, errore o silenzioso). |
funzione(n, ...) | |
incremento(n) | Restituisce un valore speciale che può essere utilizzato con setDoc() o updateDoc() che dice al server di incrementare il valore corrente del campo del valore specificato. Se l'operando o il valore del campo corrente utilizzano la precisione in virgola mobile, tutta l'aritmetica segue la semantica IEEE 754. Se entrambi i valori sono interi, anche i valori esterni all'intervallo di numeri sicuri di JavaScript (da Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER ) sono soggetti a perdita di precisione. Inoltre, una volta elaborate dal backend Firestore, tutte le operazioni sugli interi vengono limitate tra -2^63 e 2^63-1. Se il valore del campo corrente non è di tipo number o se il campo non esiste ancora, la trasformazione imposta il campo sul valore specificato. |
funzione(query, ...) | |
getAggregate(query, aggregateSpec) | Calcola le aggregazioni specificate sui documenti nel set di risultati della query specificata senza scaricare effettivamente i documenti. L'utilizzo di questa funzione per eseguire aggregazioni è efficiente perché vengono scaricati solo i valori di aggregazione finali, non i dati dei documenti. Questa funzione può eseguire aggregazioni di documenti nei casi in cui il set di risultati è eccessivamente grande per essere scaricato interamente (migliaia di documenti). |
getCount(query) | Calcola il numero di documenti nel set di risultati della query specificata senza effettivamente scaricare i documenti. Usare questa funzione per contare i documenti è efficiente perché viene scaricato solo il conteggio finale, non i dati dei documenti. Questa funzione può contare i documenti nei casi in cui il set di risultati è eccessivamente grande per essere scaricato interamente (migliaia di documenti). |
getDocs(query) | Esegue la query e restituisce i risultati come QuerySnapshot . Tutte le query vengono eseguite direttamente dal server, anche se la query è stata precedentemente eseguita. Le modifiche recenti si riflettono nei risultati recuperati solo se sono già state applicate dal backend. Se il client è offline, l'operazione non riesce. Per visualizzare i risultati precedentemente memorizzati nella cache e le modifiche locali, utilizza l'SDK Firestore completo. |
query(query, compositeFilter, queryConstraints) | Crea una nuova istanza immutabile di Query che viene estesa per includere anche vincoli di query aggiuntivi. |
query(query, queryVincoli) | Crea una nuova istanza immutabile di Query che viene estesa per includere anche vincoli di query aggiuntivi. |
funzione(queryVincoli, ...) | |
e(queryVincoli) | Crea un nuovo QueryCompositeFilterConstraint che è una congiunzione dei vincoli di filtro specificati. Un filtro di congiunzione include un documento se soddisfa tutti i filtri specificati. |
o(queryConstraints) | Crea un nuovo QueryCompositeFilterConstraint che è una disgiunzione dei vincoli di filtro specificati. Un filtro di disgiunzione include un documento se soddisfa uno qualsiasi dei filtri indicati. |
funzione(riferimento, ...) | |
addDoc(riferimento, dati) | Aggiungi un nuovo documento alla CollectionReference specificata con i dati forniti, assegnandogli automaticamente un ID documento. Il risultato di questa scrittura si rifletterà solo nelle letture del documento che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, la scrittura fallisce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
collezione(riferimento, percorso, pathSegments) | Ottiene un'istanza CollectionReference che fa riferimento a una sottoraccolta di reference nel percorso relativo specificato. |
collezione(riferimento, percorso, pathSegments) | Ottiene un'istanza CollectionReference che fa riferimento a una sottoraccolta di reference nel percorso relativo specificato. |
deleteDoc(riferimento) | Elimina il documento a cui fa riferimento l' DocumentReference specificato. L'eliminazione si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, l'eliminazione non riesce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
doc(riferimento, percorso, segmenti percorso) | Ottiene un'istanza DocumentReference che fa riferimento a un documento all'interno del reference nel percorso relativo specificato. Se non viene specificato alcun percorso, verrà utilizzato un ID univoco generato automaticamente per il DocumentReference restituito. |
doc(riferimento, percorso, segmenti percorso) | Ottiene un'istanza DocumentReference che fa riferimento a un documento all'interno del reference nel percorso relativo specificato. |
getDoc(riferimento) | Legge il documento a cui fa riferimento il riferimento documento specificato. Tutti i documenti vengono prelevati direttamente dal server, anche se il documento è stato precedentemente letto o modificato. Le modifiche recenti si riflettono nel DocumentSnapshot recuperato solo se sono già state applicate dal backend. Se il client è offline, la lettura fallisce. Se desideri utilizzare la memorizzazione nella cache o visualizzare le modifiche locali, utilizza l'SDK Firestore completo. |
setDoc(riferimento, dati) | Scrive nel documento a cui fa riferimento l' DocumentReference specificato. Se il documento non esiste ancora, verrà creato. Il risultato di questa scrittura si rifletterà solo nelle letture del documento che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, la scrittura fallisce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
setDoc(riferimento, dati, opzioni) | Scrive nel documento a cui fa riferimento l' DocumentReference specificato. Se il documento non esiste ancora, verrà creato. Se fornisci merge o mergeFields , i dati forniti possono essere uniti in un documento esistente. Il risultato di questa scrittura si rifletterà solo nelle letture del documento che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, la scrittura fallisce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
updateDoc(riferimento, dati) | Aggiorna i campi nel documento a cui fa riferimento l' DocumentReference specificato. L'aggiornamento fallirà se applicato a un documento che non esiste. Il risultato di questo aggiornamento si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, l'aggiornamento non riesce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
updateDoc(riferimento, campo, valore, moreFieldsAndValues) | Aggiorna i campi nel documento a cui fa riferimento il DocumentReference specificato. L'aggiornamento fallirà se applicato a un documento che non esiste. I campi nidificati possono essere aggiornati fornendo stringhe di percorsi di campo separati da punti o fornendo oggetti FieldPath . Il risultato di questo aggiornamento si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, l'aggiornamento non riesce. Se desideri visualizzare le modifiche locali o le scritture nel buffer finché il client non è online, utilizza l'SDK completo di Firestore. |
funzione(istantanea, ...) | |
endAt(istantanea) | Crea un oggetto QueryEndAtConstraint che modifica il set di risultati in modo che termini con il documento fornito (incluso). La posizione finale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine orderBy della query. |
finePrima(istantanea) | Crea un oggetto QueryEndAtConstraint che modifica il set di risultati in modo che termini prima del documento fornito (esclusivo). La posizione finale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine orderBy della query. |
startAfter(istantanea) | Crea un oggetto QueryStartAtConstraint che modifica il set di risultati in modo che inizi dopo il documento fornito (esclusivo). La posizione iniziale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordineorderBy della query. |
startAt(istantanea) | Crea un oggetto QueryStartAtConstraint che modifica il set di risultati in modo che inizi dal documento fornito (incluso). La posizione iniziale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine orderBy di questa query. |
Classi
Classe | Descrizione |
---|---|
Campo aggregato | Rappresenta un'aggregazione che può essere eseguita da Firestore. |
AggregateQuerySnapshot | I risultati dell'esecuzione di una query di aggregazione. |
Byte | Un oggetto immutabile che rappresenta una matrice di byte. |
CollezioneRiferimento | Un oggetto CollectionReference può essere utilizzato per aggiungere documenti, ottenere riferimenti a documenti ed eseguire query su documenti (utilizzando query() ). |
Riferimento documento | Un DocumentReference fa riferimento alla posizione di un documento in un database Firestore e può essere utilizzato per scrivere, leggere o ascoltare la posizione. Il documento nella posizione di riferimento può esistere o meno. |
Istantanea del documento | Un DocumentSnapshot contiene i dati letti da un documento nel database Firestore. I dati possono essere estratti con .data() o .get(<field>) per ottenere un campo specifico. Per un DocumentSnapshot che punta a un documento inesistente, qualsiasi accesso ai dati restituirà "undefinito". Puoi utilizzare il metodo exists() per verificare esplicitamente l'esistenza di un documento. |
CampoPercorso | Un FieldPath fa riferimento a un campo in un documento. Il percorso può essere costituito da un singolo nome di campo (che fa riferimento a un campo di livello superiore nel documento) o da un elenco di nomi di campo (che fa riferimento a un campo nidificato nel documento). Crea un FieldPath fornendo i nomi dei campi. Se viene fornito più di un nome di campo, il percorso punterà a un campo nidificato in un documento. |
CampoValore | Valori sentinella che possono essere utilizzati durante la scrittura dei campi del documento con set() o update() . |
Firestore | L'interfaccia del servizio Cloud Firestore. Non chiamare direttamente questo costruttore. Utilizza invece getFirestore() . |
FirestoreErrore | Un errore restituito da un'operazione Firestore. |
GeoPoint | Un oggetto immutabile che rappresenta una posizione geografica in Firestore. La posizione è rappresentata come coppia latitudine/longitudine. I valori di latitudine sono compresi nell'intervallo [-90, 90]. I valori di longitudine sono compresi nell'intervallo [-180, 180]. |
Domanda | Una Query si riferisce a una query che puoi leggere o ascoltare. Puoi anche costruire oggetti Query perfezionati aggiungendo filtri e ordinandoli. |
QueryCompositeFilterVincolo | Un QueryCompositeFilterConstraint viene utilizzato per restringere il set di documenti restituiti da una query Firestore eseguendo l'OR o l'AND logico di più QueryFieldFilterConstraint s o QueryCompositeFilterConstraint S. QueryCompositeFilterConstraint vengono creati richiamando or() o and() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche QueryCompositeFilterConstraint . |
Vincolo di query | Un QueryConstraint viene utilizzato per restringere l'insieme di documenti restituiti da una query Firestore. I QueryConstraint vengono creati invocando where() , ordinato da() , iniziare a() , startAfter() , finePrima() , fineAt() , limite() , limitToLast() e può quindi essere passato a query() per creare una nuova istanza di query che contenga anche questo QueryConstraint . |
QueryDocumentSnapshot | Un QueryDocumentSnapshot contiene dati letti da un documento nel database Firestore come parte di una query. L'esistenza del documento è garantita e i suoi dati possono essere estratti con .data() o .get(<field>) per ottenere un campo specifico. Un QueryDocumentSnapshot offre la stessa superficie API di un DocumentSnapshot . Poiché i risultati della query contengono solo documenti esistenti, la proprietà exists sarà sempre vera e data() non restituirà mai 'undefinito'. |
QueryEndAtConstraint | Un QueryEndAtConstraint viene utilizzato per escludere i documenti dalla fine di un set di risultati restituito da una query Firestore. QueryEndAtConstraint vengono creati richiamando endAt() o endBefore() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche questo QueryEndAtConstraint . |
VincoloFiltroCampoQuery | Un QueryFieldFilterConstraint viene utilizzato per restringere il set di documenti restituiti da una query Firestore filtrando uno o più campi del documento. QueryFieldFilterConstraint vengono creati richiamando where() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche questo QueryFieldFilterConstraint . |
VincoloLimiteQuery | Un QueryLimitConstraint viene utilizzato per limitare il numero di documenti restituiti da una query Firestore. QueryLimitConstraint vengono creati richiamando limit() o limitToLast() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche questo QueryLimitConstraint . |
QueryOrderByConstraint | Un QueryOrderByConstraint viene utilizzato per ordinare il set di documenti restituiti da una query Firestore. QueryOrderByConstraint vengono creati richiamando orderBy() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche questo QueryOrderByConstraint . Nota: i documenti che non contengono il campo orderBy non saranno presenti nel risultato della query. |
QuerySnapshot | Un QuerySnapshot contiene zero o più oggetti DocumentSnapshot che rappresentano i risultati di una query. È possibile accedere ai documenti come array tramite la proprietà docs o enumerarli utilizzando il metodo forEach . Il numero di documenti può essere determinato tramite le proprietà empty e size . |
QueryStartAtConstraint | Un QueryStartAtConstraint viene utilizzato per escludere i documenti dall'inizio di un set di risultati restituito da una query Firestore. QueryStartAtConstraint vengono creati richiamando startAt() o startAfter() e possono quindi essere passati a query() per creare una nuova istanza di query che contiene anche questo QueryStartAtConstraint . |
Timestamp | Un Timestamp rappresenta un punto nel tempo indipendente da qualsiasi fuso orario o calendario, rappresentato come secondi e frazioni di secondo con una risoluzione di nanosecondi nell'epoca UTC. È codificato utilizzando il calendario gregoriano prolettico che estende il calendario gregoriano all'anno uno. Viene codificato presupponendo che tutti i minuti durino 60 secondi, ovvero i secondi intercalari vengono "spalmati" in modo che non sia necessaria alcuna tabella dei secondi intercalari per l'interpretazione. L'intervallo è compreso tra 0001-01-01T00:00:00Z e 9999-12-31T23:59:59.999999999Z. Per esempi e ulteriori specificazioni fare riferimento alla definizione Timestamp . |
Transazione | Un riferimento a una transazione. L'oggetto Transaction passato alla updateFunction di una transazione fornisce i metodi per leggere e scrivere dati nel contesto della transazione. Vedi runTransaction() . |
WriteBatch | Un batch di scrittura, utilizzato per eseguire più scritture come una singola unità atomica. Un oggetto WriteBatch può essere acquisito chiamando writeBatch() . Fornisce metodi per aggiungere scritture al batch di scrittura. Nessuna delle scritture verrà sottoposta a commit (o visibile localmente) finché non verrà chiamato WriteBatch.commit() . |
Interfacce
Interfaccia | Descrizione |
---|---|
Specifica aggregata | Specifica un insieme di aggregazioni e i relativi alias. |
DocumentData | Dati del documento (da utilizzare con setDoc() ) è costituito da campi mappati a valori. |
FirestoreDataConverter | Convertitore utilizzato da withConverter() per trasformare oggetti utente di tipo AppModelType in dati Firestore di tipo DbModelType . L'utilizzo del convertitore consente di specificare argomenti di tipo generico durante l'archiviazione e il recupero di oggetti da Firestore. In questo contesto, un "AppModel" è una classe utilizzata in un'applicazione per assemblare insieme informazioni e funzionalità correlate. Una classe di questo tipo potrebbe, ad esempio, avere proprietà con tipi di dati complessi e nidificati, proprietà utilizzate per la memorizzazione, proprietà di tipi non supportati da Firestore (come symbol e bigint ) e funzioni di supporto che eseguono operazioni composte. Tali classi non sono adatte e/o non è possibile archiviarle in un database Firestore. Invece, le istanze di tali classi devono essere convertite in "piani vecchi oggetti JavaScript" (POJO) con proprietà esclusivamente primitive, potenzialmente annidate all'interno di altri POJO o array di POJO. In questo contesto, questo tipo viene chiamato "DbModel" e sarebbe un oggetto adatto a persistere in Firestore. Per comodità, le applicazioni possono implementare FirestoreDataConverter e registrare il convertitore con oggetti Firestore, come DocumentReference o Query , per convertire automaticamente AppModel in DbModel durante l'archiviazione in Firestore e convertire DbModel in AppModel durante il recupero da Firestore. |
Impostazioni | Specifica le configurazioni personalizzate per la tua istanza Cloud Firestore. È necessario impostarli prima di invocare qualsiasi altro metodo. |
Opzioni di transazione | Opzioni per personalizzare il comportamento delle transazioni. |
Digitare Alias
Digita Alias | Descrizione |
---|---|
AggiungiPrefissoToKeys | Restituisce una nuova mappa in cui ogni chiave ha il prefisso con la chiave esterna aggiunta a un punto. |
AggregateFieldType | L'unione di tutti i tipi AggregateField supportati da Firestore. |
AggregateSpecData | Un tipo le cui chiavi vengono prese da un AggregateSpec e i cui valori sono il risultato dell'aggregazione eseguita dal corrispondente AggregateField dall'input AggregateSpec . |
AggregateType | Tipo di unione che rappresenta il tipo di aggregazione da eseguire. |
Campi ChildUpdate | Helper per il calcolo dei campi nidificati per un dato tipo T1. Ciò è necessario per distribuire tipi di unione come undefined | {...} (succede per oggetti di scena opzionali) o {a: A} | {b: B} . In questo caso d'uso, V viene utilizzato per distribuire i tipi di unione di T[K] su Record , poiché T[K] viene valutato come un'espressione e non distribuito. Vedi https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types |
FirestoreErrorCode | L'insieme di codici di stato Firestore. I codici sono gli stessi esposti da gRPC qui: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md Valori possibili: - 'cancelled': l'operazione è stata annullata (tipicamente dal chiamante). - 'sconosciuto': errore sconosciuto o errore proveniente da un dominio di errore diverso. - 'argomento-invalido': il client ha specificato un argomento non valido. Si noti che questo differisce dalla "precondizione fallita". 'argomento-invalido' indica argomenti che sono problematici indipendentemente dallo stato del sistema (ad esempio un nome di campo non valido). - 'deadline-exceeded': la scadenza è scaduta prima che l'operazione potesse essere completata. Per le operazioni che modificano lo stato del sistema, questo errore potrebbe essere restituito anche se l'operazione è stata completata correttamente. Ad esempio, una risposta riuscita da un server potrebbe essere stata ritardata abbastanza a lungo da far scadere la scadenza. - 'non trovato': alcuni documenti richiesti non sono stati trovati. - 'già-esiste': alcuni documenti che abbiamo tentato di creare esistono già. - 'permission-denied': il chiamante non ha il permesso di eseguire l'operazione specificata. - 'resource-exhausted': alcune risorse sono state esaurite, forse una quota per utente o forse l'intero file system ha esaurito lo spazio. - 'failed-precondition': l'operazione è stata rifiutata perché il sistema non si trova nello stato richiesto per l'esecuzione dell'operazione. - 'aborted': l'operazione è stata interrotta, in genere a causa di un problema di concorrenza come l'interruzione delle transazioni, ecc. - 'out-of-range': l'operazione è stata tentata oltre l'intervallo valido. - 'non implementato': l'operazione non è implementata o non è supportata/abilitata. - 'interno': errori interni. Significa che alcune invarianti previste dal sistema sottostante sono state interrotte. Se vedi uno di questi errori, qualcosa è molto rotto. - 'non disponibile': il servizio non è attualmente disponibile. Si tratta molto probabilmente di una condizione transitoria e può essere corretta riprovando con un backoff. - "perdita di dati": perdita o danneggiamento irrecuperabile dei dati. - 'unauthenticated': la richiesta non dispone di credenziali di autenticazione valide per l'operazione. |
Campi di aggiornamento nidificati | Per ciascun campo (ad esempio "bar"), trova tutte le chiavi nidificate (ad esempio { 'bar.baz': T1, 'bar.qux': T2 } ). Intersecali insieme per creare un'unica mappa contenente tutte le possibili chiavi che sono tutte contrassegnate come opzionali |
Ordina per direzione | La direzione di una clausola orderBy() è specificata come 'desc' o 'asc' (discendente o ascendente). |
ParzialeConFieldValue | Simile a Partial<T> di Typescript, ma consente di omettere i campi nidificati e di passare FieldValues come valori di proprietà. |
Primitivo | Tipi primitivi. |
TipoConstraintQuery | Descrive i diversi vincoli di query disponibili in questo SDK. |
VincoloFiltroQuery | QueryFilterConstraint è un tipo di unione helper che rappresenta QueryFieldFilterConstraint e QueryCompositeFilterConstraint . |
QueryNonFilterConstraint | QueryNonFilterConstraint è un tipo di unione helper che rappresenta QueryConstraint utilizzati per restringere o ordinare l'insieme di documenti, ma che non filtrano esplicitamente un campo di documento. QueryNonFilterConstraint vengono creati invocando orderBy() , iniziare a() , startAfter() , finePrima() , fineAt() , limit() o limitToLast() e può quindi essere passato a query() per creare una nuova istanza di query che contenga anche QueryConstraint . |
Imposta opzioni | Un oggetto opzioni che configura il comportamento di setDoc() e chiama. Queste chiamate possono essere configurate per eseguire unioni granulari invece di sovrascrivere i documenti di destinazione nella loro interezza fornendo un SetOptions con merge: true . |
UnioneToIntersezione | Data un'unione di tipo U = T1 | T2 | ... , restituisce un tipo intersecato (T1 & T2 & ...) . Utilizza tipi condizionali distributivi e inferenza da tipi condizionali. Ciò funziona perché più candidati per la stessa variabile di tipo in posizioni controvarianti provocano la deduzione di un tipo di intersezione. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection -tipo |
Aggiorna dati | Aggiorna dati (da utilizzare con updateDoc() ) costituito da percorsi di campo (ad esempio "foo" o "foo.baz") mappati su valori. I campi che contengono punti fanno riferimento ai campi nidificati all'interno del documento. FieldValues può essere passato come valori di proprietà. |
DoveFiltroOp | Le condizioni di filtro in una clausola where() vengono specificate utilizzando le stringhe '<', '<=', '==', '!=', '>=', '>', 'array-contains' , "in", "array-contains-any" e "not-in". |
ConFieldValue | Consente di passare FieldValues come valore di proprietà mantenendo l'indipendenza dai tipi. |
funzione(app, ...)
getFirestore(app)
Restituisce l'istanza Firestore predefinita esistente associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite.
Firma:
export declare function getFirestore(app: FirebaseApp): Firestore;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
app | FirebaseApp | L'istanza FirebaseApp a cui è associata l'istanza Firestore restituita. |
Ritorna:
L'istanza Firestore dell'app fornita.
getFirestore(app, ID database)
Questa API viene fornita come anteprima per gli sviluppatori e potrebbe cambiare in base al feedback che riceviamo. Non utilizzare questa API in un ambiente di produzione.
Restituisce l'istanza Firestore esistente associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza una nuova istanza con le impostazioni predefinite.
Firma:
export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
app | FirebaseApp | L'istanza FirebaseApp a cui è associata l'istanza Firestore restituita. |
ID database | corda | Il nome del database. |
Ritorna:
L'istanza Firestore dell'app fornita.
inizializzaFirestore(app, impostazioni)
Inizializza una nuova istanza di Cloud Firestore con le impostazioni fornite. Può essere chiamato solo prima di qualsiasi altra funzione, incluso getFirestore() . Se le impostazioni personalizzate sono vuote, questa funzione equivale a chiamare getFirestore() .
Firma:
export declare function initializeFirestore(app: FirebaseApp, settings: Settings): Firestore;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
app | FirebaseApp | La FirebaseApp a cui verrà associata l'istanza Firestore . |
impostazioni | Impostazioni | Un oggetto impostazioni per configurare l'istanza Firestore . |
Ritorna:
Un'istanza Firestore
appena inizializzata.
inizializzaFirestore(app, impostazioni, databaseId)
Questa API viene fornita come anteprima per gli sviluppatori e potrebbe cambiare in base al feedback che riceviamo. Non utilizzare questa API in un ambiente di produzione.
Inizializza una nuova istanza di Cloud Firestore con le impostazioni fornite. Può essere chiamato solo prima di qualsiasi altra funzione, incluso getFirestore() . Se le impostazioni personalizzate sono vuote, questa funzione equivale a chiamare getFirestore() .
Firma:
export declare function initializeFirestore(app: FirebaseApp, settings: Settings, databaseId?: string): Firestore;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
app | FirebaseApp | La FirebaseApp a cui verrà associata l'istanza Firestore . |
impostazioni | Impostazioni | Un oggetto impostazioni per configurare l'istanza Firestore . |
ID database | corda | Il nome del database. |
Ritorna:
Un'istanza Firestore
appena inizializzata.
funzione(firestore, ...)
collection(firestore, percorso, pathSegments)
Ottiene un'istanza CollectionReference
che fa riferimento alla raccolta nel percorso assoluto specificato.
Firma:
export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
fuoco | Firestore | Un riferimento all'istanza root Firestore . |
sentiero | corda | Un percorso separato da barre per una raccolta. |
pathSegmenti | corda[] | Segmenti di percorso aggiuntivi da applicare rispetto al primo argomento. |
Ritorna:
CollezioneRiferimento < Dati documento , Dati documento >
L'istanza CollectionReference
.
Eccezioni
Se il percorso finale ha un numero pari di segmenti e non punta a una raccolta.
collectionGroup(firestore, collectionId)
Crea e restituisce una nuova istanza Query
che include tutti i documenti nel database contenuti in una raccolta o sottoraccolta con il collectionId
specificato .
Firma:
export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
fuoco | Firestore | Un riferimento all'istanza root Firestore . |
ID raccolta | corda | Identifica le raccolte su cui eseguire query. Verrà inclusa ogni raccolta o sottoraccolta con questo ID come ultimo segmento del percorso. Non può contenere una barra. |
Ritorna:
Domanda < Dati documento , Dati documento >
La Query
creata .
connectFirestoreEmulator(firestore, host, porta, opzioni)
Modifica questa istanza per comunicare con l'emulatore Cloud Firestore.
Firma:
export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
mockUserToken?: EmulatorMockTokenOptions | string;
}): void;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Firestore | Firestore | L'istanza Firestore da configurare per connettersi all'emulatore. |
ospite | corda | L'host emulatore (Ex: localhost). |
porta | numero | La porta dell'emulatore (Ex: 9000). |
opzioni | {MockUserToken?: EmulatormockTokenOptions | corda; } |
Ritorna:
vuoto
Doc (Firestore, Path, PathSegments)
Ottiene un'istanza DocumentReference
che si riferisce al documento nel percorso assoluto specificato.
Firma:
export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Firestore | Firestore | Un riferimento all'istanza del Firestore radice. |
sentiero | corda | Un percorso separato da una taglio a un documento. |
percorsi | corda[] | Segmenti di percorso aggiuntivi che verranno applicati rispetto al primo argomento. |
Ritorna:
Riferimento documento < DocumentData , DocumentData >
L'istanza DocumentReference
.
Eccezioni
Se il percorso finale ha un numero dispari di segmenti e non indica un documento.
runTransaction(firestore, updateFunction, opzioni)
Esegue la updateFunction
fornita e quindi tenta di commettere le modifiche applicate all'interno della transazione. Se un documento letto nella transazione è cambiato, Cloud Firestore gira la updateFunction
. Se non riesce a impegnarsi dopo 5 tentativi, la transazione fallisce.
Il numero massimo di scritture consentite in una singola transazione è 500.
Firma:
export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Firestore | Firestore | Un riferimento al database FireStore per eseguire questa transazione. |
UpdateFunction | (Transazione: transazione ) => Promise <T> | La funzione da eseguire nel contesto della transazione. |
opzioni | Transazioni | Un obiettivo di opzioni per configurare il numero massimo di tentativi di impegnarsi. |
Ritorna:
Promise <T>
Se la transazione ha completato correttamente o è stata esplicitamente interrotta (la updateFunction
ha restituito una promessa fallita), la promessa restituita dalla updateFunction
viene restituito qui. Altrimenti, se la transazione non è riuscita, viene restituita una promessa rifiutata con l'errore di errore corrispondente.
terminare(firestore)
Termina l'istanza Firestore
fornita.
Dopo aver chiamato terminate()
è possibile utilizzare solo le funzioni clearIndexedDbPersistence()
. Qualsiasi altra funzione lancerà un FirestoreError
. La terminazione non annulla alcuna scrittura in sospeso e qualsiasi promessa che in attesa di una risposta dal server non verrà risolta.
Per riavviare dopo la risoluzione, creare una nuova istanza di Firestore
con GetFireStore () .
Firma:
export declare function terminate(firestore: Firestore): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Firestore | Firestore | L'istanza Firestore da terminare. |
Ritorna:
Promise <void>
Una Promise
che viene risolta quando l'istanza è stata terminata con successo.
WriteBatch (FireStore)
Crea un batch di scrittura, usato per eseguire più scritture come singola operazione atomica. Il numero massimo di scritture consentite in un singolo WriteBatch è 500.
Il risultato di queste scritture si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, la scrittura fallisce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function writeBatch(firestore: Firestore): WriteBatch;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Firestore | Firestore |
Ritorna:
Un WriteBatch
che può essere utilizzato per eseguire atomicamente più scritture.
funzione()
contare()
Crea un oggetto AggregateField che può essere utilizzato per calcolare il conteggio dei documenti nell'insieme dei risultati di una query.
Firma:
export declare function count(): AggregateField<number>;
Ritorna:
Aggregatefield <numero>
deletefield ()
Restituisce un Sentinel per l'uso con updatedoc () o setDoc () con {merge: true}
per contrassegnare un campo per la cancellazione.
Firma:
export declare function deleteField(): FieldValue;
Ritorna:
documentID ()
Restituisce uno speciale FieldPath
Sentinel per fare riferimento all'ID di un documento. Può essere utilizzato nelle query per ordinare o filtrare dall'ID documento.
Firma:
export declare function documentId(): FieldPath;
Ritorna:
getFireStore ()
Restituisce l'istanza di FireStore predefinita esistente associata al FireBasepp predefinito . Se non esiste un'istanza, inizializza una nuova istanza con impostazioni predefinite.
Firma:
export declare function getFirestore(): Firestore;
Ritorna:
L'istanza del fuoco dell'app fornita.
servertimestamp ()
Restituisce una sentinella utilizzata con setDoc () o updatedoc () per includere un timestamp generato dal server nei dati scritti.
Firma:
export declare function serverTimestamp(): FieldValue;
Ritorna:
funzione (databaseid, ...)
getFirestore(IDdatabase)
Questa API è fornita come anteprima per gli sviluppatori e può cambiare in base al feedback che riceviamo. Non utilizzare questa API in un ambiente di produzione.
Restituisce l'istanza di FireStore esistente associata al FireBasepp predefinito . Se non esiste un'istanza, inizializza una nuova istanza con impostazioni predefinite.
Firma:
export declare function getFirestore(databaseId: string): Firestore;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
DatabaseId | corda | Il nome del database. |
Ritorna:
L'istanza del fuoco dell'app fornita.
funzione (elementi, ...)
ArrayRemove (Elements)
Restituisce un valore speciale che può essere utilizzato con setDoc () o che indica al server di rimuovere gli elementi forniti da qualsiasi valore di array già esistente sul server. Tutte le istanze di ciascun elemento specificato verranno rimosse dall'array. Se il campo modificato non è già un array, verrà sovrascritto da un array vuoto.
Firma:
export declare function arrayRemove(...elements: unknown[]): FieldValue;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
elementi | sconosciuto[] | Gli elementi da rimuovere dall'array. |
Ritorna:
FieldValue
Sentinel per l'uso in una chiamata a setDoc()
o updateDoc()
arrayUnione(elementi)
Restituisce un valore speciale che può essere utilizzato con setDoc () o updatedoc () che indica al server a unire gli elementi indicati con qualsiasi valore di array già esistente sul server. Ogni elemento specificato che non esiste già nell'array verrà aggiunto alla fine. Se il campo da modificare non è già un array, verrà sovrascritto da un array contenente esattamente gli elementi specificati.
Firma:
export declare function arrayUnion(...elements: unknown[]): FieldValue;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
elementi | sconosciuto[] | Gli elementi all'unione nell'array. |
Ritorna:
FieldValue
Sentinel per l'uso in una chiamata a setDoc()
o updateDoc()
.
funzione (campo, ...)
Medio (campo)
Crea un oggetto AggregateField che può essere utilizzato per calcolare la media di un campo specificato su un intervallo di documenti nel set di risultati di una query.
Firma:
export declare function average(field: string | FieldPath): AggregateField<number | null>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
campo | stringa | CampoPercorso | Specifica il campo in media attraverso il set di risultati. |
Ritorna:
Aggregatefield <numero | null>
somma (campo)
Crea un oggetto AggregateField che può essere utilizzato per calcolare la somma di un campo specificato su un intervallo di documenti nell'insieme dei risultati di una query.
Firma:
export declare function sum(field: string | FieldPath): AggregateField<number>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
campo | stringa | CampoPercorso | Specifica il campo da sommare attraverso il set di risultati. |
Ritorna:
Aggregatefield <numero>
funzione (fieldpath, ...)
Orderby (FieldPath, Directionstr)
Crea una queryOrderByConstraint che ordina il risultato della query per il campo specificato, facoltativamente in ordine decrescente anziché ascendente.
Firma:
export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
fieldPath | stringa | CampoPercorso | Il campo da ordinare. |
direzionitr | Orderbydirection | Direzione opzionale da ordinare per ('ASC' o 'DESC'). Se non specificato, l'ordine sarà ascendente. |
Ritorna:
Il QueryOrderBycostraint creato .
Where (FieldPath, Opstr, Value)
Crea un QueryFieldFilterConstraint che impone che i documenti debbano contenere il campo specificato e che il valore dovrebbe soddisfare il vincolo di relazione fornito.
Firma:
export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
fieldPath | stringa | CampoPercorso | Il percorso per confrontare |
Opstr | Wherefilterop | La stringa operativa (ad esempio "& lt;", "& lt; =", "==", "& lt;", "& lt; =", "! ="). |
valore | sconosciuto | Il valore per il confronto |
Ritorna:
Il Creato QueryFieldFilterConstraint .
funzione(valoricampo, ...)
endAt(valoricampo)
Crea un QueryenDatConstraint che modifica il set di risultati per terminare nei campi forniti rispetto all'ordine della query. L'ordine dei valori del campo deve corrispondere all'ordine dell'ordine per clausole della query.
Firma:
export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
valori di campo | sconosciuto[] | Il campo valorizza per porre fine a questa query in, in ordine dell'ordine della query da. |
Ritorna:
Un QueryenDatConstraint da passare a query()
EndBefore (FieldValues)
Crea un QueryenDatConstraint che modifica il risultato set per terminare davanti ai campi forniti rispetto all'ordine della query. L'ordine dei valori del campo deve corrispondere all'ordine dell'ordine per clausole della query.
Firma:
export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
valori di campo | sconosciuto[] | Il campo valorizza per porre fine a questa query prima, in ordine di ordine della query. |
Ritorna:
Un QueryenDatConstraint da passare a query()
startAfter(valoricampo)
Crea una querystartContraint che modifica il risultato impostato dopo i campi forniti rispetto all'ordine della query. L'ordine dei valori del campo deve corrispondere all'ordine dell'ordine per clausole della query.
Firma:
export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
valori di campo | sconosciuto[] | Il campo valori per avviare questa query dopo, in ordine di ordine della query. |
Ritorna:
Un querystartatContraint da passare a query()
StartAT (FieldValues)
Crea una querystartContraint che modifica il set di risultati per iniziare dai campi forniti rispetto all'ordine della query. L'ordine dei valori del campo deve corrispondere all'ordine dell'ordine per clausole della query.
Firma:
export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
valori di campo | sconosciuto[] | Il campo valori per avviare questa query in, in ordine dell'ordine della query da. |
Ritorna:
Un querystartatContraint da passare a query()
.
funzione (a sinistra, ...)
AggregateFieldEqual (sinistra, a destra)
Confronta due 'aggregatefield `` istanze per l'uguaglianza.
Firma:
export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Sinistra | Aggregatefield <Unknown> | Confronta questo campo aggregato a right . |
Giusto | Aggregatefield <Unknown> | Confronta questo campo aggregato a left . |
Ritorna:
booleano
AggregateQuerySnapShoteQuel (sinistra, a destra)
Confronta due istanze AggregateQuerySnapshot
per l'uguaglianza.
Due istanze AggregateQuerySnapshot
sono considerate "uguali" se hanno query sottostanti che confrontano uguali e gli stessi dati.
Firma:
export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Sinistra | AggregateQuerySnapShot <Aggregatespectype, AppModelType, dbModelType> | Il primo AggregateQuerySnapshot da confrontare. |
Giusto | AggregateQuerySnapShot <Aggregatespectype, AppModelType, dbModelType> | Il secondo AggregateQuerySnapshot da confrontare. |
Ritorna:
booleano
true
se gli oggetti sono "uguali", come definito sopra o false
altrimenti.
queryEqual(sinistra, destra)
Restituisce vero se le query fornite indicano la stessa raccolta e applicano gli stessi vincoli.
Firma:
export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Sinistra | Domanda <AppModelType, DbModelType> | Una Query da confrontare. |
Giusto | Domanda <AppModelType, DbModelType> | Una Query da confrontare. |
Ritorna:
booleano
Vero se i riferimenti indicano la stessa posizione nello stesso database FireStore.
Refequal (sinistra, a destra)
Restituisce vero se i riferimenti forniti sono uguali.
Firma:
export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Sinistra | Riferimento documento <AppModelType, dbModelType> | Raccoltareferenza <AppModelType, DbModelType> | Un riferimento a confrontare. |
Giusto | Riferimento documento <AppModelType, dbModelType> | Raccoltareferenza <AppModelType, DbModelType> | Un riferimento a confrontare. |
Ritorna:
booleano
Vero se i riferimenti indicano la stessa posizione nello stesso database FireStore.
SnapShotequal (sinistra, a destra)
Restituisce vero se le istantanee fornite sono uguali.
Firma:
export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
Sinistra | DocumentsNapShot <AppModelType, dbModelType> | Querysnapshot <AppModelType, DbModelType> | Un'istantanea da confrontare. |
Giusto | DocumentsNapShot <AppModelType, dbModelType> | Querysnapshot <AppModelType, DbModelType> | Un'istantanea da confrontare. |
Ritorna:
booleano
Vero se le istantanee sono uguali.
funzione(limite, ...)
limite (limite)
Crea una querylimitConstraint che restituisce solo i primi documenti corrispondenti.
Firma:
export declare function limit(limit: number): QueryLimitConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
limite | numero | Il numero massimo di elementi da restituire. |
Ritorna:
La querylimitConstraint creata .
limite all'ultimo(limite)
Crea una querylimitConstraint che restituisce solo gli ultimi documenti corrispondenti.
È necessario specificare almeno una clausola orderBy
per le query limitToLast
, altrimenti verrà lanciata un'eccezione durante l'esecuzione.
Firma:
export declare function limitToLast(limit: number): QueryLimitConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
limite | numero | Il numero massimo di elementi da restituire. |
Ritorna:
La querylimitConstraint creata .
funzione (loglevel, ...)
setLoLevel (logLevel)
Imposta la verbosità dei registri del fuoco di cloud (debug, errore o silenzioso).
Firma:
export declare function setLogLevel(logLevel: LogLevel): void;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
loglevel | Loglevel | La verbosità impostata per l'attività e la registrazione degli errori. Può essere uno dei seguenti valori:
|
Ritorna:
vuoto
funzione (n, ...)
incremento (n)
Restituisce un valore speciale che può essere utilizzato con setDoc () o updatedoc () che indica al server di incrementare il valore corrente del campo in base al valore dato.
Se l'operando o il valore del campo corrente utilizza la precisione del punto mobile, tutta l'aritmetica segue la semantica IEEE 754. Se entrambi i valori sono numeri interi, valori al di fuori dell'intervallo di numeri di sicurezza di JavaScript ( Number.MIN_SAFE_INTEGER
a Number.MAX_SAFE_INTEGER
) sono anche soggetti a perdita di precisione. Inoltre, una volta elaborati dal backend del Firestore, tutte le operazioni intera sono limitate tra -2^63 e 2^63-1.
Se il valore del campo corrente non è di tipo number
o se il campo non esiste ancora, la trasformazione imposta il campo sul valore dato.
Firma:
export declare function increment(n: number): FieldValue;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
N | numero | Il valore da incrementare da. |
Ritorna:
FieldValue
Sentinel per l'uso in una chiamata a setDoc()
o updateDoc()
funzione (query, ...)
getAggreGate (query, aggregatespec)
Calcola le aggregazioni specificate sui documenti nel set di risultati della query data senza effettivamente scaricare i documenti.
L'uso di questa funzione per eseguire aggregazioni è efficiente perché vengono scaricati solo i valori di aggregazione finale, non i dati dei documenti. Questa funzione può eseguire aggregazioni dei documenti nei casi in cui il set di risultati è proibitivamente grande da scaricare del tutto (migliaia di documenti).
Firma:
export declare function getAggregate<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
domanda | Domanda <AppModelType, DbModelType> | La query il cui set di risultati è aggregato. |
AggregatesPec | Aggregatespectype | Un oggetto AggregateSpec che specifica gli aggregati da eseguire sul set di risultati. AggregatesPec specifica gli alias per ciascun aggregato, che può essere utilizzato per recuperare il risultato aggregato. |
Ritorna:
Promise < AggregateQuerySnapShot <Aggregatespectype, AppModelType, dbModelType >>
Esempio
const aggregateSnapshot = await getAggregate(query, {
countOfDocs: count(),
totalHours: sum('hours'),
averageScore: average('score')
});
const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;
getCount (query)
Calcola il numero di documenti nel set di risultati della query data senza effettivamente scaricare i documenti.
L'uso di questa funzione per contare i documenti è efficiente perché viene scaricato solo il conteggio finale, non i dati dei documenti. Questa funzione può contare i documenti nei casi in cui il set di risultati è proibitivamente grande da scaricare del tutto (migliaia di documenti).
Firma:
export declare function getCount<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
count: AggregateField<number>;
}, AppModelType, DbModelType>>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
domanda | Domanda <AppModelType, DbModelType> | La query il cui set di risultati è calcolato. |
Ritorna:
Promise < AggregateQuerySnapShot <{conta: aggregatefield <Mumber>; }, AppModelType, dbModelType >>
Una promessa che sarà risolta con il conteggio; Il conteggio può essere recuperato da snapshot.data().count
, dove snapshot
è l' AggregateQuerySnapshot
a cui si risolve la promessa restituita.
getdocs (query)
Esegue la query e restituisce i risultati come querysnapshot .
Tutte le query vengono eseguite direttamente dal server, anche se la query è stata precedentemente eseguita. Le recenti modifiche si riflettono solo nei risultati recuperati se sono già stati applicati dal backend. Se il client è offline, l'operazione non riesce. Per vedere il risultato precedentemente memorizzato nella cache e le modifiche locali, utilizzare il Firestore SDK completo.
Firma:
export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
domanda | Domanda <AppModelType, DbModelType> | La Query da eseguire. |
Ritorna:
Promise < QuerySnapShot <AppModelType, dbModelType >>
Una promessa che sarà risolta con i risultati della query.
query(query, compositeFilter, queryConstraints)
Crea una nuova istanza immutabile di query che viene estesa per includere anche vincoli di query aggiuntivi.
Firma:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
domanda | Domanda <AppModelType, DbModelType> | L'istanza di query da utilizzare come base per i nuovi vincoli. |
compositefilter | QueryCompositeFilterConstraint | La queryCompositeFilterConstraint da applicare. Crea queryCompositeFilterConstraint usando e () o () . |
QueryConstraints | QuerynonfilterConstraint [] | Ulteriore QuerynonfilterConstraint s da applicare (ad esempio orderby () , limite () ). |
Ritorna:
Domanda <AppModelType, DbModelType>
Eccezioni
Se uno qualsiasi dei vincoli di query forniti non può essere combinato con i vincoli esistenti o nuovi.
query(query, queryVincoli)
Crea una nuova istanza immutabile di query che viene estesa per includere anche vincoli di query aggiuntivi.
Firma:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
domanda | Domanda <AppModelType, DbModelType> | L'istanza di query da utilizzare come base per i nuovi vincoli. |
QueryConstraints | Queryconstraint [] | L'elenco di Queryconstraint s da applicare. |
Ritorna:
Domanda <AppModelType, DbModelType>
Eccezioni
Se uno qualsiasi dei vincoli di query forniti non può essere combinato con i vincoli esistenti o nuovi.
funzione(queryVincoli, ...)
e(queryVincoli)
Crea una nuova queryCompositeFilterConstraint che è una congiunzione dei vincoli di filtro indicati. Un filtro congiunta include un documento se soddisfa tutti i filtri indicati.
Firma:
export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
QueryConstraints | Queryfilterconstraint [] | Opzionale. L'elenco di queryfilterconstraint s per eseguire una congiunzione per. Questi devono essere creati con chiamate a dove () , O() , o e () . |
Ritorna:
QueryCompositeFilterConstraint
La nuova creazione di querycositefilterconstraint .
o (queryconstraints)
Crea una nuova queryCompositeFilterConstraint che è una disgiunzione dei vincoli di filtro indicati. Un filtro di disgiunzione include un documento se soddisfa uno dei filtri indicati.
Firma:
export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
QueryConstraints | Queryfilterconstraint [] | Opzionale. L'elenco di queryfilterconstraint S per eseguire una disgiunzione per. Questi devono essere creati con chiamate a dove () , O() , o e () . |
Ritorna:
QueryCompositeFilterConstraint
La nuova creazione di querycositefilterconstraint .
funzione(riferimento, ...)
addDoc (riferimento, dati)
Aggiungi un nuovo documento a CollectionReference
SPECIFICATO con i dati forniti, assegnandolo automaticamente un ID documento.
Il risultato di questa scrittura si rifletterà solo nelle letture dei documenti che si verificano dopo che la promessa restituita si risolve. Se il client è offline, la scrittura fallisce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Raccoltareferenza <AppModelType, DbModelType> | Un riferimento alla raccolta per aggiungere questo documento a. |
dati | ConfieldValue <AppModelType> | Un oggetto contenente i dati per il nuovo documento. |
Ritorna:
Promise < DocumentReference <AppModelType, dbModelType >>
Una Promise
risolta con un DocumentReference
che punta al documento appena creato dopo che è stato scritto al backend.
Eccezioni
Errore: se l'ingresso fornito non è un documento Firestore valido.
Raccolta (Riferimento, Path, PathSegments)
Ottiene un'istanza CollectionReference
che si riferisce a una subcollezione di reference
sul percorso relativo specificato.
Firma:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Raccoltareferenza <AppModelType, DbModelType> | Un riferimento a una raccolta. |
sentiero | corda | Un percorso separato da una raccolta verso una raccolta. |
percorsi | corda[] | Segmenti di percorso aggiuntivi da applicare rispetto al primo argomento. |
Ritorna:
Raccoltareferenza < DocumentData , DocumentData >
L'istanza CollectionReference
.
Eccezioni
Se il percorso finale ha un numero pari di segmenti e non indica una raccolta.
Raccolta (Riferimento, Path, PathSegments)
Ottiene un'istanza CollectionReference
che si riferisce a una subcollezione di reference
sul percorso relativo specificato.
Firma:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento a un documento FireStore. |
sentiero | corda | Un percorso separato da una raccolta verso una raccolta. |
percorsi | corda[] | Segmenti di percorso aggiuntivi che verranno applicati rispetto al primo argomento. |
Ritorna:
Raccoltareferenza < DocumentData , DocumentData >
L'istanza CollectionReference
.
Eccezioni
Se il percorso finale ha un numero pari di segmenti e non indica una raccolta.
Eletedoc (riferimento)
Elimina il documento a cui si fa riferimento dal DocumentReference
specificato .
La cancellazione si rifletterà solo nelle letture dei documenti che si verificano dopo che la promessa restituita si risolve. Se il client è offline, l'eliminazione non riesce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento al documento da eliminare. |
Ritorna:
Promise <void>
Una Promise
risolta una volta che il documento è stato eliminato con successo dal backend.
Doc (Riferimento, Path, PathSegments)
Ottiene un'istanza DocumentReference
che si riferisce a un documento all'interno reference
nel percorso relativo specificato. Se non viene DocumentReference
alcun percorso, verrà utilizzato un ID univoco generato automaticamente .
Firma:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Raccoltareferenza <AppModelType, DbModelType> | Un riferimento a una raccolta. |
sentiero | corda | Un percorso separato da una taglio a un documento. Deve essere omesso di utilizzare ID generati automatici. |
percorsi | corda[] | Segmenti di percorso aggiuntivi che verranno applicati rispetto al primo argomento. |
Ritorna:
Riferimento documento <AppModelType, DbModelType>
L'istanza DocumentReference
.
Eccezioni
Se il percorso finale ha un numero dispari di segmenti e non indica un documento.
Doc (Riferimento, Path, PathSegments)
Ottiene un'istanza DocumentReference
che si riferisce a un documento all'interno reference
nel percorso relativo specificato.
Firma:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento a un documento FireStore. |
sentiero | corda | Un percorso separato da una taglio a un documento. |
percorsi | corda[] | Segmenti di percorso aggiuntivi che verranno applicati rispetto al primo argomento. |
Ritorna:
Riferimento documento < DocumentData , DocumentData >
L'istanza DocumentReference
.
Eccezioni
Se il percorso finale ha un numero dispari di segmenti e non indica un documento.
getdoc (riferimento)
Legge il documento a cui si fa riferimento dal riferimento del documento specificato.
Tutti i documenti vengono recuperati direttamente dal server, anche se il documento è stato precedentemente letto o modificato. Le recenti modifiche si riflettono nei DocumentSnapshot
recuperati solo se sono già state applicate dal backend. Se il client è offline, la lettura non riesce. Se ti piace usare la memorizzazione nella cache o vedere le modifiche locali, usa il Firestore SDK completo.
Firma:
export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Il riferimento del documento a prendere. |
Ritorna:
Promise < DocumentsNapShot <AppModelType, dbModelType >>
Una promessa risolta con un DocumentSnapshot
contenente il contenuto del documento corrente.
setDoc(riferimento, dati)
Scrive nel documento a cui si fa riferimento il DocumentReference
specificato . Se il documento non esiste ancora, verrà creato.
Il risultato di questa scrittura si rifletterà solo nelle letture dei documenti che si verificano dopo che la promessa restituita si risolve. Se il client è offline, la scrittura fallisce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento al documento da scrivere. |
dati | ConfieldValue <AppModelType> | Una mappa dei campi e dei valori per il documento. |
Ritorna:
Promise <void>
Una Promise
risolta una volta che i dati sono stati scritti con successo al backend.
Eccezioni
Errore: se l'ingresso fornito non è un documento Firestore valido.
setDoc(riferimento, dati, opzioni)
Scrive nel documento a cui si fa riferimento il DocumentReference
specificato . Se il documento non esiste ancora, verrà creato. Se fornisci merge
o mergeFields
, i dati forniti possono essere uniti in un documento esistente.
Il risultato di questa scrittura si rifletterà solo nelle letture dei documenti che si verificano dopo che la promessa restituita si risolve. Se il client è offline, la scrittura fallisce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento al documento da scrivere. |
dati | ParzialewithfieldValue <AppModelType> | Una mappa dei campi e dei valori per il documento. |
opzioni | Setoptions | Un oggetto per configurare il comportamento set. |
Ritorna:
Promise <void>
Una Promise
risolta una volta che i dati sono stati scritti con successo al backend.
Eccezioni
Errore: se l'ingresso fornito non è un documento Firestore valido.
aggiornatoC (riferimento, dati)
Aggiorna i campi nel documento a cui si fa riferimento il DocumentReference
specificato . L'aggiornamento fallirà se applicato a un documento che non esiste.
Il risultato di questo aggiornamento si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, l'aggiornamento non riesce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento al documento da aggiornare. |
dati | Aggiornato <Dbmodeltype> | Un oggetto contenente i campi e i valori con cui aggiornare il documento. I campi possono contenere punti per fare riferimento ai campi nidificati all'interno del documento. |
Ritorna:
Promise <void>
Una Promise
risolta una volta che i dati sono stati scritti con successo al backend.
Eccezioni
Errore: se l'input fornito non è valido dati FireStore.
aggiornatoC (riferimento, campo, valore, più campi
Aggiorna i campi nel documento a cui si fa riferimento dal DocumentReference
specificato che l'aggiornamento fallirà se applicato a un documento che non esiste.
I campi nidificati possono essere aggiornati fornendo stringhe per il percorso di campo separato a punti o fornendo oggetti FieldPath
.
Il risultato di questo aggiornamento si rifletterà solo nelle letture dei documenti che si verificano dopo la risoluzione della promessa restituita. Se il client è offline, l'aggiornamento non riesce. Se desideri vedere le modifiche locali o le scritture buffer fino a quando il cliente non è online, usa il Firestore SDK completo.
Firma:
export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
riferimento | Riferimento documento <AppModelType, DbModelType> | Un riferimento al documento da aggiornare. |
campo | stringa | CampoPercorso | Il primo campo da aggiornare. |
valore | sconosciuto | Il primo valore. |
più campi e valori | sconosciuto[] | Coppie di valore chiave aggiuntive. |
Ritorna:
Promise <void>
Una Promise
risolta una volta che i dati sono stati scritti con successo al backend.
Eccezioni
Errore: se l'input fornito non è valido dati FireStore.
funzione(istantanea, ...)
EDAT (istantanea)
Crea un QueryenDatConstraint che modifica il set di risultati per terminare nel documento fornito (inclusivo). La posizione finale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine della query.
Firma:
export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
istantanea | DocumentsNapShot <AppModelType, DbModelType> | L'istantanea del documento a cui finire. |
Ritorna:
Un QueryenDatConstraint da passare a query()
finePrima(istantanea)
Crea un QueryenDatConstraint che modifica il set di risultati per terminare prima del documento fornito (esclusivo). La posizione finale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine della query.
Firma:
export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
istantanea | DocumentsNapShot <AppModelType, DbModelType> | L'istantanea del documento finirà prima. |
Ritorna:
Un QueryenDatConstraint da passare a query()
StartaFter (Snapshot)
Crea una querystartConstraint che modifica il set di risultati per iniziare dopo il documento fornito (esclusivo). La posizione iniziale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti nell'ordine della query.
Firma:
export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
istantanea | DocumentsNapShot <AppModelType, DbModelType> | L'istantanea del documento da iniziare dopo. |
Ritorna:
Un querystartatContraint da passare a query()
startAt(istantanea)
Crea una querystartConstraint che modifica il set di risultati per iniziare dal documento fornito (inclusivo). La posizione iniziale è relativa all'ordine della query. Il documento deve contenere tutti i campi forniti orderBy
di questa query.
Firma:
export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parametri
Parametro | Tipo | Descrizione |
---|---|---|
istantanea | DocumentsNapShot <AppModelType, DbModelType> | L'istantanea del documento da iniziare. |
Ritorna:
Un querystartatContraint da passare a query()
.
ADDPREFIXTOKEYS
Restituisce una nuova mappa in cui ogni chiave è prefissata con la chiave esterna aggiunta a un punto.
Firma:
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];
};
AggregateFieldType
L'Unione di tutti i tipi AggregateField
supportati da FireStore.
Firma:
export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;
Aggregatespecdata
Un tipo le cui chiavi sono prelevate da un AggregateSpec
e i cui valori sono il risultato dell'aggregazione eseguita dal corrispondente AggregateField
dall'input AggregateSpec
.
Firma:
export declare type AggregateSpecData<T extends AggregateSpec> = {
[P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};
AggregateType
Tipo di unione che rappresenta il tipo aggregato da eseguire.
Firma:
export declare type AggregateType = 'count' | 'avg' | 'sum';
ChildUpdatefields
Aiutante per il calcolo dei campi nidificati per un determinato tipo T1. Questo è necessario per distribuire tipi sindacali come undefined | {...}
(accade per oggetti di scena opzionali) o {a: A} | {b: B}
.
In questo caso d'uso, V
viene utilizzato per distribuire i tipi dell'Unione di T[K]
Record
, poiché T[K]
viene valutato come espressione e non distribuito.
Vedi https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
Firma:
export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;
FireStoreRrorCode
L'insieme dei codici di stato del fuoco. I codici sono gli stessi in quelli esposti da GRPC qui: https://github.com/grpc/grpc/blob/master/doc/statusSodes.md
Valori possibili: - "Annullati": l'operazione è stata annullata (in genere dal chiamante). - "Sconosciuto": errore sconosciuto o un errore da un diverso dominio di errore. - "Invalid-Argument": il cliente ha specificato un argomento non valido. Si noti che ciò differisce da "non riuscita". "Invalid-Argument" indica argomenti problematici indipendentemente dallo stato del sistema (ad es. Un nome di campo non valido). - "Deadline-Exceded": scadenza scaduta prima che l'operazione potesse completare. Per le operazioni che cambiano lo stato del sistema, questo errore può essere restituito anche se l'operazione è completata correttamente. Ad esempio, una risposta riuscita da un server avrebbe potuto essere ritardata abbastanza a lungo da consentire alla scadenza della scadenza. - 'No-FOUND': non è stato trovato alcuni documenti richiesti. - "Già esiste": alcuni documenti che abbiamo tentato di creare già esistono. - 'Denied autorizzazione': il chiamante non ha il permesso di eseguire l'operazione specificata. -"Esplorato le risorse": alcune risorse sono state esaurite, forse una quota per utente, o forse l'intero file system è fuori spazio. - "Precondizioni non riuscite": l'operazione è stata respinta perché il sistema non è in uno stato richiesto per l'esecuzione dell'operazione. - 'Aborted': l'operazione è stata interrotta, in genere a causa di un problema di concorrenza come le transazioni aborte, ecc.- 'Out-of-range': l'operazione è stata tentata oltre l'intervallo valido. - "Unimplement": l'operazione non è implementata o non supportata/abilitata. - 'Internal': errori interni. Significa che alcuni invarianti previsti dal sistema sottostante sono stati rotti. Se vedi uno di questi errori, qualcosa è molto rotto. - "non disponibile": il servizio non è attualmente disponibile. Questa è molto probabilmente una condizione transitoria e può essere corretta riprovando con un backoff. - "Perdita di dati": perdita o corruzione dei dati irrecuperabili. - "non autenticato": la richiesta non ha credenziali di autenticazione valide per l'operazione.
Firma:
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';
Nidificatifield
Per ogni campo (ad esempio 'bar'), trova tutte le chiavi nidificate (ad esempio { 'bar.baz': t1, 'bar.qux': t2 } ). Intersecali insieme per creare una singola mappa contenente tutte le chiavi possibili che sono tutte contrassegnate come opzionali
Firma:
export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
[K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;
Orderbydirection
La direzione di una clausola OrderBy () è specificata come "DESC" o "ASC" (discendente o ascendente).
Firma:
export declare type OrderByDirection = 'desc' | 'asc';
ParzialewithfieldValue
Simile al Partial<T>
di TypeScript , ma consente di omettere i campi nidificati e i valori di campo di essere passati come valori di proprietà.
Firma:
export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);
Primitivo
Tipi primitivi.
Firma:
export declare type Primitive = string | number | boolean | undefined | null;
QueryConstraintType
Descrive i diversi vincoli di query disponibili in questo SDK.
Firma:
export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';
Queryfilterconstraint
QueryFilterConstraint
è un tipo di unione Helper che rappresenta QueryFieldFilterConstraint e QueryCompositeFilterConstraint .
Firma:
export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;
QuerynonfilterConstraint
QueryNonFilterConstraint
è un tipo di unione Helper che rappresenta i querycostraints che vengono utilizzati per restringere o ordinare l'insieme di documenti, ma che non filtrano esplicitamente su un campo del documento. QueryNonFilterConstraint
s sono creati invocando orderby () , iniziare a() , startafter () , endBefore () , endat () , limite () o limittolast () e può quindi essere passato a query () per creare una nuova istanza di query che contiene anche il QueryConstraint
.
Firma:
export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;
Setoptions
Un oggetto Opzioni che configura il comportamento di setDoc () e chiama. Queste chiamate possono essere configurate per eseguire le fusioni granulari invece di sovrascrivere i documenti target nella merge: true
interezza fornendo un SetOptions
.
Firma:
export declare type SetOptions = {
readonly merge?: boolean;
} | {
readonly mergeFields?: Array<string | FieldPath>;
};
Union ToIndtersencection
Dato un tipo di unione U = T1 | T2 | ...
, restituisce un tipo intersecato (T1 & T2 & ...)
.
Utilizza tipi condizionali distributivi e inferenza dai tipi condizionali. Funziona perché più candidati per lo stesso tipo variabile in posizioni contro-varianti provoca l'inferimento di un tipo di intersezione. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection -tipo
Firma:
export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
Aggiornato
Aggiorna i dati (per l'uso con updatedoc () ) che consiste in percorsi sul campo (ad esempio "foo" o "foo.baz") mappati ai valori. Campi che contengono i campi nidificati di riferimento di punti all'interno del documento. I valori di campo possono essere passati come valori di proprietà.
Firma:
export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
[K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;
Wherefilterop
Le condizioni di filtro in una clausola dove () sono specificate usando le stringhe '& lt;', '& lt; =', '==', '! =', '& Gt; =', '& gt;', 'Array-Contains' , "in", "contad-contains-any" e "not-in".
Firma:
export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
ConfieldValue
Consente di passare i valori di campo come valore della proprietà mantenendo la sicurezza del tipo.
Firma:
export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);