javascript - Javascript 创建帐户未链接到 Firebase 数据库
问题描述
我已经在文件中设置了一个注册表单index.html
并将其连接到index.js
,这样当用户在相应的框中输入他们的电子邮件和密码并单击“提交”按钮时,它会将他们的详细信息添加到数据库中。
但是,没有将任何内容添加到数据库中,并且控制台中也没有给出任何错误。'firebase-database' 已包含在html
head
标签中。
这是 HTML 文件:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Hobbyist</title>
<link rel="stylesheet" href="style.css" />
<link href="https://fonts.googleapis.com/css?family=Poppins" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Ubuntu" rel="stylesheet">
<script src="https://www.gstatic.com/firebasejs/5.8.1/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-database.js"></script>
<script src="https://cdn.firebase.com/libs/firebaseui/3.1.1/firebaseui.js"></script>
<link type="text/css" rel="stylesheet" href="https://cdn.firebase.com/libs/firebaseui/3.1.1/firebaseui.css" />
<script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>
<script type = "text/javascript" src="index.js"></script>
</head>
<body>
<div id="sign-up">
<h2>SIGN UP</h2>
<form action="index.html" method="post">
<input type="email" placeholder="Email..." id="create-email"><p />
<input type="password" placeholder="Password..." id="create-password"><p />
<button class="button" id="create-account">CREATE ACCOUNT</button>
</form>
</div>
</body>
</html>
这是 JavaScript 文件:
(function() {
// the config details have been removed for security reasons
var config = {
apiKey: "---",
authDomain: "---",
databaseURL: "---",
projectId: "---",
storageBucket: "---",
messagingSenderId: "---"
};
firebase.initializeApp(config);
$(document).ready(() => {
$('#create-account').click(() => {
var email = document.getElementById('create-email').value;
var password = document.getElementById('create-password').value;
var db = firebase.database();
db.ref('users/' + email).set({
email: email,
password: password
});
});
});
}());
我已经搜索并搜索了一种将信息添加到数据库的方法,但没有找到任何东西。有什么建议么?
解决方案
我们需要在这里查看 HTML 以及要报告的某种形式的错误。正在捕获的点击事件可能已关闭。控制台中没有任何内容的事实需要检查,因为 Firebase SDK 中当前有一些内容表明它将被弃用。我还将提出一个建议,将用户发布到用户参考而不是您上面的参考。Firebase 的文档存储功能将有助于我认为您在此处尝试完成的工作。
var db = firebase.database()
db.ref("/users").set({
email: email,
password: password
});
我要在这里检查的另一件事是.push()
firebase 的方法。该set()
方法将覆盖数据库中的任何用户。
最重要的是,这里有一些问题需要回答才能做出准确的解决方案。
推荐阅读
- c++ - 如何发送原始 JSON Post 请求 C++
- c++ - 在 Solaris 11 上使用 g++ 5.4 编译时未在 Solaris 10 上捕获 C++ 异常
- android - 试图从活动 1 获取字符串值到活动 2 的片段,但它返回为 null。GetArgument 始终返回为 null
- php - PHP 登录脚本仅适用于 mysql 已知的用户名
- prolog - 我想根据某些用户的答案在 SWI-Prolog 中求和
- python - 列表绘图速度与 Numpy 数组绘图速度
- json - 具有原始类型或 $ref 类型的 JSON Schema 对象?
- arrays - 在 Escape Velocity 中将变量设置为数组
- sql - 如何在 SQL Server 中获取字符串前后的所有内容
- scrapy - Tripadvisor 爬取 0 页(0 页/分钟)的 Scrapy 蜘蛛