你好,我正在做一些 firebase 项目,我可以通过 javascript 将我的数据保存到 firebase 数据库中。但是我无法弄清楚如何自动增加我的数据库的子值(我的子值是 duyuru,你可以在下面看到详细信息)。我在下面分享了我的代码,你能给我一些提示来解决这个问题吗?
<script>
// Initialize Firebase
var config = {
apiKey: "sample1",
authDomain: "sample2",
databaseURL: "sample3",
storageBucket: "sample4",
};
firebase.initializeApp(config);
var database = firebase.database();
firebase.initializeApp(config);
var database = firebase.database();
function writeUserData(userId, name, email, imageUrl) {
var kategori1 = document.getElementById("kategori").value;
var duyuru1 = document.getElementById("duyuru").value;
var name1 = document.getElementById("name").value;
var email1 = document.getElementById("email").value;
var imageUrl1 = document.getElementById("imageUrl").value;
firebase.database().ref(kategori1 +"/" + duyuru1).set({
username: name1,
email: email1,
profile_picture : imageUrl1
});
}
</script>
输出是这样的
{
"duyuru1": {
"email": "kjfdlkl",
"profile_picture": "dsfsd",
"username": "meraha"
}
}
我想输出这样的数据;
{
"duyuru1": {
"email": "kjfdlkl",
"profile_picture": "dsfsd",
"username": "meraha"
},
"duyuru2": {
"email": "kjfdlkl",
"profile_picture": "dsfsd",
"username": "meraha"
}
}
duyuru(子值)部分应该是自动递增的,这就是我想要的。谢谢你的回答
最佳答案
Firebase 没有自动递增键,因为这些键在客户端可能长时间离线的大型多用户系统中效果不佳。
相反,Firebase 有自己的自动生成 key 类型,称为推送 ID。这些推送 ID 与许多关系数据库中的序列具有相同的重要属性:它们是有序的和顺序的。但此外,它们可以在客户端计算,即使客户端未连接到 Firebase 服务器。
参见 Firebase documentation on saving data in lists , 这个遗产 blog post on why arrays don't work well in Firebase还有这个post on how push ids work .
关于javascript - 使用javascript自动增加firebase中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39065786/