TypeError: _firebase.default.analytics is not a function. (In '_firebase.default.analytics()', '_firebase.default.analytics' is undefined)

Viewed 69

i have i problem with this file.js ; i try to start the application but the console give me the error on the title of this post (TypeError: _firebase.default.analytics is not a function. (In '_firebase.default.analytics()', '_firebase.default.analytics' is undefined)). I'm using firebase ase database and React Native to create this app based on a common chat where differents user can join and pass messages; This is the code:



import firebase from 'firebase';
import { useCallback } from 'react';

class Fire {
    constructor() {
        this.init()
        this.checkAuth()
    }

    init = () => {
        if(!firebase.apps.length){
            var firebaseConfig = {
                apiKey: "AIzaSyCSptHIogcurTROMvzp_QB7vQ8srIbnwBk",
                authDomain: "login-with-firebase-23e8e.firebaseapp.com",
                projectId: "login-with-firebase-23e8e",
                storageBucket: "login-with-firebase-23e8e.appspot.com",
                messagingSenderId: "1099034898191",
                appId: "1:1099034898191:web:b8a3a66be2d5a49d83987a",
                measurementId: "G-73M58E50QL"
              };
              // Initialize Firebase
              firebase.initializeApp(firebaseConfig);
              firebase.analytics();
        
        }
    };

    checkAuth = () =>{
        firebase.auth().onAuthStateChanged(user => {
            if(!user){
                firebase.auth().signInAnonymously();
            }
    });
    };
    send = messages => {
        messages.forEach(item => {
            const message = {
                text: item.text,
                timestamp: firebase.database.ServerValue.TIMESTAMP,
                user: item.user
            }

            this.db.push(message)
        })
    };

    get db() {
        return firebase.database().ref("messages");
    };

    parse = message => {
        const {user, text, timestamp} = message.val()
        const {key: _id} = message;
        const createdAt = new Date(timestamp);

        return {
            _id,
            createdAt,
            text,
            user
        };
    }
    get = callback => {
        this.db.on("child_added", snapshot => callback(this.parse(snapshot)));
    };
    get uid(){
        return (firebase.auth().currentUser || {}).uid;
    }
}

export default new Fire(); 
0 Answers
Related