Bar*_*aba 5 javascript node.js firebase reactjs firebase-analytics
我正在尝试向现有的 Web 应用程序添加分析。我按照此处所述初始化 Firebase Analytics 。
const firebase = require('firebase');
firebase.initializeApp(config);
firebase.analytics();
Run Code Online (Sandbox Code Playgroud)
我收到这个错误 TypeError: firebase.analytics is not a function
可能是什么问题?
您可以像这样检查和初始化Firebase Analytics v9+。您还可以将旧版本升级到较新的 SDK。
import { initializeApp } from "firebase/app";
import { getAnalytics, logEvent, isSupported } from "firebase/analytics";
// Find this config on your firebase project overview
const firebaseConfig = { ... } // your config
// Initialize Firebase
let app = null;
let analytics = null;
isSupported().then((result) => {
if (result) {
app = initializeApp(firebaseConfig);
analytics = getAnalytics(app);
}
})
// simple event
logEvent(analytics, 'your_event_name');
// firebase defined events like page_view etc.
logEvent(analytics, 'page_view', `your_event_parameter`)
Run Code Online (Sandbox Code Playgroud)
注意:我在 Docker 构建上遇到错误,这就是我logEvent这样调用的原因:
isSupported().then((result) => {
if (result) {
logEvent(analytics, title);
}
})
Run Code Online (Sandbox Code Playgroud)
小智 6
首先,确保你正确初始化了firebase实例,如果你在服务器端运行它是不起作用的,然后官方提供了一个方法来检查你的环境是否支持分析,调用 ,firebase.analytics.isSupported()这是一个承诺,所以正确的方法使用它是
var firebaseConfig... // your config
var firebase.initializeApp(firebaseConfig);
firebase.analytics.isSupported().then((isSupported) => {
if (isSupported) {
analytics = firebase.analytics();
}
})
Run Code Online (Sandbox Code Playgroud)
您必须导入“firebase/analytics”以获得副作用:
const firebase = require('firebase/app')
require('firebase/analytics')
firebase.initializeApp(config);
firebase.analytics();
Run Code Online (Sandbox Code Playgroud)
那对我有用
就我而言,这行得通。我正在使用 firebase 版本^8.1.2
import firebase from 'firebase/app';
import 'firebase/analytics';
import 'firebase/auth';
...
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5057 次 |
| 最近记录: |