firebase.analytics不是函数

问题描述

我正在尝试将分析添加到现有的Web应用程序中。我按照here所述初始化Firebase Analytics。


const firebase = require('firebase');
firebase.initializeApp(config);
firebase.analytics();

我收到此错误TypeError: firebase.analytics is not a function

可能是什么问题?

解决方法

首先,请确保您正确初始化了Firebase实例,如果您在服务器端运行它,它将无法正常工作,然后,官方提供商请使用一种方法来检查您的环境是否支持分析,请致电firebase.analytics.isSupported(),是一个承诺,所以正确的使用方式是

var firebaseConfig... // your config

var firebase.initializeApp(firebaseConfig);

firebase.analytics.isSupported().then((isSupported) => {
    if (isSupported) {
      analytics = firebase.analytics();
    }
})
,

您必须导入“ firebase / analytics”以产生副作用:

const firebase = require('firebase/app')
require('firebase/analytics')

firebase.initializeApp(config);
firebase.analytics();

对我有用

,

Node不支持Analytics。检查以下链接以获取环境支持。 https://firebase.google.com/support/guides/environments_js-sdk

,

尝试firebase.analytics.Analytics;

const firebase = require('firebase/app')
require('firebase/analytics')
    
firebase.initializeApp(config);
firebase.analytics.Analytics; 
,

就我而言,这可行。我正在使用Firebase版本^8.1.2

import firebase from 'firebase/app';
import 'firebase/analytics';
import 'firebase/auth';

...

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