繁体   English   中英

如何将 Firebase SDK 版本 9 添加到 Service Worker Chrome 扩展清单版本 MV3?

[英]How to add Firebase SDK version 9 to a Service Worker Chrome Extension Manifest Version MV3?

我找到了这个视频How to add Firebase to a Service Worker - Chrome Extension Manifest Version MV3 created at 26 Jan 2021

以他在视频中所做的相同方式导入文件,我收到以下错误:

“语法错误:意外的令牌‘导出’”

为了尝试解决这个问题,我更改了 manifest.json 以包含“type”="module"(因为 firebase SDK 版本 9 使用 es 模块)

"background": {
    "service_worker": "firebase.js",
    "type": "module" 
},

现在错误是:

“不允许在安装 Service Worker 后导入新脚本的 importScripts()”

因此,我下载到扩展程序https://www.gstatic.com/firebasejs/9.10.0/firebase-app.js以将 Firebase static js 文件包含在名为 firebase 的文件夹中的扩展程序中,并尝试按如下方式导入。

import * as firebase from "../firebase/firebase-app.js"; 
    ...
firebase.initializeApp(firebaseConfig); 

还尝试过:

import { initializeApp } from "../firebase/firebase-app.js";
...
initializeApp(firebaseConfig); 

但在这两种情况下,我都会收到以下错误:

FirebaseError: Firebase: No Firebase App '[DEFAULT]' 已创建 - 调用 Firebase App.initializeApp() (app/no-app)。

DevTools 无法加载源代码 map:无法加载 chrome-extension://hoopapahcqwsdaerotpablmamhgdbhga/firebase/firebase-app.js.map 的内容:系统错误:.net::ERR_FILE_NOT_FOUND

有什么建议吗?

我想我找到了问题的解决方案,在 firebase-app.js 的末尾如下:

//# sourceMappingURL=firebase-app.js.map

所以我去了https://www.gstatic.com/firebasejs/9.10.0/firebase-app.js.map并将其内容复制到名为 firebase-app.js.map 的文件中,并将其放在与firebase-app.js 现在代码工作正常。

Firebase 对象 initializeApp

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM