我正在尝试按照有关在firebase中设计数据库的教程,但我在JavaScript控制台中收到以下错误:
未捕获的ReferenceError:未定义Firebase
以下是教程的链接,我尝试在JavaScript控制台中运行的代码段是:https://www.firebase.com/blog/2014-11-04-firebase-realtime-queries.html
posts2 = driver.find_elements_by_class_name("_Rm")
for post2 in posts2:
print(post2.get_attribute("href"))
答案 0 :(得分:17)
答案 1 :(得分:10)
在标题中,包括以下内容:
<head>
<script src='https://cdn.firebase.com/js/client/2.2.1/firebase.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
<link rel='stylesheet' type='text/css' href='/resources/tutorial/css/example.css'>
</head>
&#13;
那将解决问题。
答案 2 :(得分:1)
通过&#34; ionic add firebase&#34;安装firebase时遇到了同样的问题。这个添加了firebase版本3.2.0。然后,在寻找答案的同时,我尝试使用版本2.4.2的cdn并且错误消失了,所以我想通过离子下载的版本是导致错误的原因,所以我下载了2.4.2版本,现在它可以工作了。
希望这会有所帮助。
答案 3 :(得分:1)
我遇到了firebase.util lib的问题,因为罗德里戈说我认为这是一个问题。
在:
var ref = new Firebase('url');
现在:
firebase.initializeApp(config);
由于firebase对象的定义不同,因此无法找到它。在我的情况下,我需要更新库以与firebase 3.0版兼容。我认为使用旧库不是一个好主意,不合适但是必须将代码更新到版本3.如果还没有人完成,我们可能有机会为社区做出贡献。
答案 4 :(得分:1)
<head>
<script src='https://cdn.firebase.com/js/client/2.2.1/firebase.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
<link rel='stylesheet' type='text/css' href='/resources/tutorial/css/example.css'>
</head>
答案 5 :(得分:1)
如果您像以前一样使用Firebase Hosting(并使用<script src="/__/firebase/7.14.5/firebase-app.js"></script>
),则如果尝试在本地运行而不运行firebase serve
,则会遇到此错误。
答案 6 :(得分:0)
从firebase创建连接变量。
con = {
"apiKey": "your key",
"authDomain": "example.firebaseapp.com",
"databaseURL": "https://example.firebaseio.com/",
"projectId": "example",
"storageBucket": "example.appspot.com",
"messagingSenderId": "id"
};
使用此初始化Firebase
firebase.initializeApp(con);
答案 7 :(得分:0)
如果您使用的是Firebase Web API,那么非常重要的一点是首先在body标签中包含核心Firebase SDK,此SDK提供了Firebase可访问性。如图所示。
,此后,我们必须包括所有相关的api代码。可用
这些将对您有所帮助,并且将彻底解决您的问题,即未定义firebase,您无需添加任何其他脚本的
答案 8 :(得分:0)
如果有人在 2021 年 7 月遇到此问题,这是我的解决方案:
1.) 使用 CLI !!!简单多了!!! (只需执行npm install -g firebase-tools
2.) CD 到您的首选目录并执行 firebase login
3.) 登录您的 Firebase 帐户。
4.) 执行 firebase init
并完成所有步骤
5.) 在您的 app.js
文件夹中创建一个 public/
文件
6.) 添加以下代码:
document.addEventListener('DOMContentLoaded', event => {
const app = firebase.app();
});
现在你应该一切都好了,只要确保在 EventListener 中编写任何与 FireBase 交互的代码
您的项目应如下所示:
答案 9 :(得分:0)
我也遇到了同样的问题。问题出在我的 api.js
文件上。
const api = liveAPi;
var firebaseConfig = {
apiKey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
authDomain: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
projectId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
storageBucket: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
messagingSenderId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
appId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
measurementId: "xxxxxxxxxxxxx"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
它清楚地表明它没有访问 firebase 对象。
Firebase 建议通过 <script src="https://www.gstatic.com/firebasejs/8.7.0/firebase-app.js">
添加 js 文件,
<!-- The core Firebase JS SDK is always required and must be listed first -->
<script src="https://www.gstatic.com/firebasejs/8.7.0/firebase-app.js"></script>
<!-- TODO: Add SDKs for Firebase products that you want to use
https://firebase.google.com/docs/web/setup#available-libraries -->
<script src="https://www.gstatic.com/firebasejs/8.7.0/firebase-analytics.js"></script>
<script>
// Your web app's Firebase configuration
// For Firebase JS SDK v7.20.0 and later, measurementId is optional
var firebaseConfig = {
apiKey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
authDomain: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
projectId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
storageBucket: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
messagingSenderId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
appId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
measurementId: "xxxxxxxxxxxxx"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();
</script>
但我正在访问 js 文件中的 firebase 对象。
所以要解决这个问题:在将 api.js 文件包含在 HTML 中之前,将它们添加到 firebase 对象,如下所示:-
<script src="https://www.gstatic.com/firebasejs/8.7.0/firebase-app.js"></script>
<script src="../js/fetch/api.js"></script>
这将使 api.js 能够访问 firebase 对象。
还有一些其他方法与访问 javascript 文件中的那些 firebase 对象相关,但 firebase 通过全局对象提供的默认设置是安全的。
而且,在 APP.js 中编写所有 Javascript 代码并访问 firebase 对象和方法的方法也是一个不错的选择,但对于较大的项目来说非常痛苦。由于您需要重构代码并将其捆绑/包含到一个文件 App.js 中。