如何在Firebase中存储HTML页面各个字段的不同副本?
问题描述:
我使用Firebase作为我的应用的实时数据库。在JavaScript文件中使用JQuery。如何在Firebase中存储HTML页面各个字段的不同副本?
这是我在Firebase中的数据库结构。
users
|--- email: "[email protected]"
|--- name: "pavan"
我能name
和email
字段的值存储在我的数据库。但是,对于每次提交,Firebase中以前的值都会被新值覆盖。
我的问题是,如何在不覆盖以前的值的情况下将name
和email
字段值的不同副本存储在firebase中?
这些是我的应用程序的摘录。
JavaScript文件:
$(document).ready(function() {
// Submit Button
$('#submitBtn').click(function() {
var inputNameValue = $('#inputName').val();
var inputEmailValue = $('#inputEmail').val();
// Get a reference to the database service
var databaseRef = firebase.database().ref('users/');
// Setting the input field values into the database
databaseRef.set({
name: inputNameValue,
email: inputEmailValue
});
// Empties the fields after pushing the data into firebase
$('#inputName').val('');
$('#inputEmail').val('');
});
});
HTML文件:
<body>
<div class="mainDiv" align="right">
<h1 align="left">Firebase Web App</h1>
<br>
<div align="left" class="form-group">
<label for="inputName">Name:</label>
<input type="text" class="form-control" id="inputName" placeholder="Enter your name">
</div>
<div align="left" class="form-group">
<label for="inputEmail">Email:</label>
<input type="text" class="form-control" id="inputEmail" placeholder="Enter your email">
</div>
<button id="submitBtn"><i class="fa fa-arrow-right" aria-hidden="true"></i></button>
</div>
<script src="https://www.gstatic.com/firebasejs/3.7.8/firebase.js"></script>
<script src="firebase-init.js"></script>
<script src="index.js"></script>
</body>
答
您需要以存储领域的不同副本在你的数据库中添加push()
。尝试这个。它肯定会工作!
databaseRef.push().set({
name: inputNameValue,
email: inputEmailValue
});
答
uid
是由火力地堡认证系统中使用的名称,即,.onAuthStateChanged
得到与通常与update
使用(不设置)一个UID填充。因此,大多数应用程序将具有像users
这样的结构,每个孩子都是一个uid键。