web-dev-qa-db-fra.com

Avertissement: Il semble que vous utilisiez la version de développement du SDK Firebase JS.

J'ai intégré Firebase à mon application React.js en tant que tel: https://firebase.google.com/docs/database/web/start

fire.js:

import firebase from 'firebase'

var config = {
  apiKey: "####",
  authDomain: "#",
  databaseURL: "#",
  projectId: "#",
  storageBucket: "#",
  messagingSenderId: "#"
};
var fire = firebase.initializeApp(config);
export default fire;

App.js:

import fire from './fire';

class App extends Component {
    componentWillMount(){
        let messagesRef = fire.database().ref('messages').orderByKey().limitToLast(100);
    }
}

Mais maintenant, je reçois cet avertissement dans la console:

Il semble que vous utilisiez la version de développement de Firebase JS SDK. Lors du déploiement d'applications Firebase en production, il est conseillé de importer uniquement les composants SDK individuels que vous souhaitez utiliser.

Pour les versions de module, celles-ci sont disponibles de la manière suivante (remplacez par le nom d'un composant - c'est-à-dire auth, database, etc):

Modules CommonJS: const firebase = require ('firebase/app'); require ('firebase /');

Modules ES: importez firebase de 'firebase/app'; importer 'firebase /';

Comment puis-je résoudre cet avertissement?

J'ai essayé (dans fire.js) de changer ceci:

import firebase from 'firebase'

Pour ça:

import firebase from 'firebase/app'

Cela entraîne cette erreur:  enter image description here

12
etayluz

La manière appropriée d'importer firebase est la suivante:

import firebase from 'firebase/app';
import 'firebase/database'; // If using Firebase database
import 'firebase/storage';  // If using Firebase storage
22
etayluz

L’avertissement est plutôt informatif et précise ce que vous devez faire. Dans votre cas, c’est la ligne qui vous dit de changer la façon dont vous importez vos fichiers:

Modules ES: importez firebase de 'firebase/app'; importer 'firebase /';

Dans votre fichier fire.js, essayez de changer ceci: 

import firebase from 'firebase'

Pour ça:

import firebase from 'firebase/app'

Cela devrait éclaircir! 

Note latérale:

Dans mon cas, j'utilisais firestore et j'avais donc une importation supplémentaire que j'ai également modifiée:

import firestore from 'firebase/firestore'

À:

import 'firebase/firestore'
6

La manière appropriée d'importer Firebase et de se débarrasser des avertissements est la suivante:

Toujours importer de cette façon

import firebase from 'firebase/app';

Importez ensuite chaque sous-module (chaque service firebase) selon vos besoins

import 'firebase/auth';        // for authentication
import 'firebase/storage';     // for storage
import 'firebase/database';    // for realtime database
import 'firebase/firestore';   // for cloud firestore
import 'firebase/messaging';   // for cloud messaging
import 'firebase/functions';   // for cloud functions
2
Yash Chavda