gpt4 book ai didi

javascript - 带有 Next.js 的 Firebase Analytics - 未定义窗口

转载 作者:行者123 更新时间:2023-12-05 00:31:07 26 4
gpt4 key购买 nike

我正在尝试在 Next.js (firebase v9) 中实现和导出 firebase 分析模块
我收到错误 “引用错误:未定义窗口”对于以下代码片段。以前的所有功能都运行良好。
任何想法如何解决这一问题?

import { initializeApp, getApps, getApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
import { getAuth } from 'firebase/auth'
import { getFirestore } from '@firebase/firestore'

const firebaseConfig = {
//...
};

// Initialize Firebase
const app = !getApps().length ? initializeApp(firebaseConfig) : getApp();
const auth = getAuth();
const db = getFirestore(app)

// try to add analytics
const analytics = getAnalytics(app)
export {auth, db, analytics}

最佳答案

NextJS:

import {initializeApp} from 'firebase/app';
import {getFirestore} from 'firebase/firestore';
import {getAnalytics} from 'firebase/analytics';


const firebaseConfig = JSON.parse(
process?.env?.FIREBASE_CONFIG ?? '{}',
);

let analytics; let firestore;
if (firebaseConfig?.projectId) {
// Initialize Firebase
const app = initializeApp(firebaseConfig);

if (app.name && typeof window !== 'undefined') {
analytics = getAnalytics(app);
}

// Access Firebase services using shorthand notation
firestore = getFirestore();
}

export {analytics, firestore};

关于javascript - 带有 Next.js 的 Firebase Analytics - 未定义窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69799682/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com