无法在 Glitch 上使用 Javascript 写入 Firebase 数据库
Posted
技术标签:
【中文标题】无法在 Glitch 上使用 Javascript 写入 Firebase 数据库【英文标题】:Cant write to Firebase Database with Javascript on Glitch 【发布时间】:2019-11-10 11:57:15 【问题描述】:我正在尝试创建一个简单的应用程序以添加到 Firebase 数据库。
写入温度,然后将其与时间戳一起存储在数据库中。但由于某种原因,它不会工作。我尝试了多种不同的方法并检查了 Firebase 网站上的所有文档,但没有任何效果。任何帮助将不胜感激。谢谢
https://glitch.com/edit/#!/lcjs
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://www.gstatic.com/firebasejs/7.3.0/firebase-app.js"></script>
<title>Write to firebase</title>
</head>
<body>
<h1>Current Tempature</h1>
Tempature <input type="text" id="UserData"/>
<input type="button" id="Submit" onclick="formSubmission()" value="Submit"/>
<p id="done">
</p>
<script src="script.js"></script>
</body>
</html>
脚本.JS
// Your web app's Firebase configuration
var firebaseConfig =
apiKey: "AIzaSyDvLIcv7nEIbfnz99mhoLi8UizaJcZxHLM",
authDomain: "lcls-332a0.firebaseapp.com",
databaseURL: "https://lcls-332a0.firebaseio.com",
projectId: "lcls-332a0",
storageBucket: "lcls-332a0.appspot.com",
messagingSenderId: "604417688851",
appId: "1:604417688851:web:63eb89e29b81cd1a8546e6",
measurementId: "G-N2TVNX43T6"
;
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();
function formSubmission()
document.getElementById("done").innerHTML = "Clicked";
var today = new Date();
var timestamp = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds() + " " + today.getDate() + "/" + today.getMonth() + "/" + today.getFullYear();
var myDBConn = firebase.database().ref();
document.getElementById("done").innerHTML = "Done";
var TempBranch = myDBConn.child("MyTempatures");
var currentTemp = document.getElementbyID("UserData");
TempBranch.push( Tempature: parseInt[currentTemp.value], Time: timestamp );
document.getElementById("done").innerHTML =
"Your result has been successfully added!";
【问题讨论】:
我根据我在您的 Glitch 项目中看到的内容写了一个答案。在未来的问题中,请始终包括您得到的实际行为。 “它不起作用”比“我得到 'document.getElementbyName 不是一个函数'”更难提供帮助。 【参考方案1】:当我运行您的 Glitch 项目并提交一个值时,我在 Chrome 的 javascript 控制台中看到此错误:
script.js:26 Uncaught TypeError: document.getElementbyName 不是函数
在表单提交 (script.js:26)
在 HTMLInputElement.onclick ((index):11)
没有方法document.getElementbyName
。您可能打算使用document.getElementsByTagName
或document.getElementById
。
您问题的代码中存在相同类型的错误方法名称,其中您有getElementbyID
。你可能也指document.getElementById
。
密切注意拼写和大写/小写字母是个好主意,因为它们在您阅读代码时很容易被忽略,但它们会在工作代码和非工作代码之间产生巨大差异。
【讨论】:
以上是关于无法在 Glitch 上使用 Javascript 写入 Firebase 数据库的主要内容,如果未能解决你的问题,请参考以下文章
Roblox Glitch:Gear 仅在本地显示,不会显示给同一服务器上的其他玩家