Impossibile ottenere dati da React-Native-Firebase (v6) Firestore: undefined non è una funzione (vicino a '... this._firestore.native.collectionGet ...')


11

Sono stato bloccato su questo problema per così tanto tempo. Ho appena iniziato a implementare Firestore nella mia applicazione Reazione-nativo con Reazione-nativo-Firebase. Sto solo seguendo i documenti [ https://invertase.io/oss/react-native-firebase/v6/firestore/quick-start#reading-data] ma non funziona per me.

Questo è in Android. Non ho ancora testato su iOS.

Continuo a ricevere questo errore:

[TypeError: undefined is not a function (near '...this._firestore.native.collectionGet...')]

Ecco il codice pertinente:

import React, {Component} from 'react';
import { firebase } from '@react-native-firebase/firestore';

export default App extends Component{
  constructor(props) {
    super(props);

    this.getData= this.getData.bind(this)
    this.getData()

    this.state = {};
  }

  async getData() {
    try {
      const querySnapshot = await firebase.firestore()
      .collection('Gyms')
      .get() //error with this

      console.log('Documents', querySnapshot.docs);

    } catch (e) {
      console.log(e);
    }
  }
}


Qualsiasi aiuto sarebbe molto apprezzato!


1
Ricevo lo stesso errore. Qualsiasi aiuto sarebbe apprezzato.
Burning Hippo

@BurningHippo Quindi ho appena disinstallato / reinstallato i moduli, e ho fatto di nuovo un 'run-android di reazione nativo' e ora funziona. idk man lol
Akshat Jain il

1
Ricevo lo stesso errore. La reinstallazione del modulo non ha funzionato per me.
Mohit Bhansali,

Risposte:


2

Questo errore si verifica perché manca il modulo RNFirestore nativo.

Dopo yarn @react-native-firebase/firestoreaver bisogno di eseguire pod installe attivare una ricostruzione con react-native run-ios.


1

Se hai una buona configurazione di Firebase / Firestore quindi è perché le tue query sono false, puoi provare con qualcosa del genere:

import firestore from '@react-native-firebase/firestore';

firestore()
  .collection('collection')
  .onSnapshot((querySnapshot) => {
     console.log(querySnapshot)
  })
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.