2
votes

Flutter Web Firebase TypeError: dart.global.firebase.firestore n'est pas une fonction

J'essaie d'utiliser Firebase dans mon projet Web Flutter.
Mais l'application ne peut pas être exécutée avec ce message.

  <script src="https://www.gstatic.com/firebasejs/7.17.1/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/7.17.1/firebase-analytics.js"></script>

  <script>
    // Your web app's Firebase configuration
    var firebaseConfig = {
      apiKey: "MY_API_KEY",
      authDomain: "MY_AUTHDOMAIN",
      databaseURL: "MY_URL",
      projectId: "MY_ID",
      storageBucket: "MY_BUCKET",
      messagingSenderId: "MY_ID",
      appId: "MY_APPID",
      measurementId: "MY_ID"
    };
    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);
    firebase.analytics();
  </script>

Mon index.html ressemble à ceci.

TypeError: dart.global.firebase.firestore is not a function
at Object.firestore$ [as firestore] 

Quelqu'un sait comment résoudre ce problème?
Merci!!


1 commentaires

Veuillez partager votre pubspec.yaml .


3 Réponses :


9
votes

L'ajout de cette ligne dans index.html fait l'affaire.

  <script src="https://www.gstatic.com/firebasejs/7.17.1/firebase-firestore.js"></script>


2 commentaires

vraiment? ça l'a fait pour moi.


Qu'est-ce que cela fait et je me demande pourquoi n'est-il pas mentionné sur le lien officiel? Quelqu'un le sait? Expliquez-moi, s'il vous plaît



5
votes

J'ai eu la même chose, pour le réparer, ajoutez simplement ceci dans l'index.html en bas:

....
  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);
  firebase.analytics();
...

assurez-vous simplement que c'est après:

...
<script src="https://www.gstatic.com/firebasejs/7.17.1/firebase-firestore.js"></script>
  <script src="main.dart.js" type="application/javascript"></script>
...


0 commentaires

1
votes

Je pense que ce qu'il vous manque, c'est le SDK Firestore pour résoudre ce problème.

SDK Firebase JS disponibles (à partir du CDN)

puis ajoutez la bibliothèque que vous utilisez pour votre cas, c'est Firestore donc ça devrait être celui-ci:

<script src="https://www.gstatic.com/firebasejs/8.0.2/firebase-firestore.js"></script>

ajoutez-le sur le dessus de votre corps


0 commentaires