如何在我的网站上显示我的 Firebase 数据库中的数据?
How can I display the data from my Firebase Database in my web site?
在 Firebase 上,我遇到了以下问题;我的数据结构如下:
myApp
- myList
- KKJJXX...1 myString: "String One"
- KKJJXX...2 myString: "String Two"
- KKJJXX...3 myString: "String Three"
我想做一些JavaScript(在我的网页中)来列出上面数据库中 myString 的值。
这是我在浏览网页后得出的结论。它在一定程度上起作用,但不完全是。
我可以在浏览器的调试控制台中看到我已经获得了我想要的数据。我在剧本之后更准确地写下了我的担忧。
<script>
var ref = new Firebase("https://myApp.firebaseio.com/myList/");
ref.on("value", function(snapshot) {
for (x in snapshot.val()) {
var xRef = new Firebase("https://myApp.firebaseio.com/myList/"+x+"/");
xRef.once("value", function(xsnapshot) {
var name = xsnapshot.child("myString");
console.log(name);
});
}
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
});
</script>
在调试控制台中我得到这条线(3 次):
Object { A: Object, Y: Object, g: Object }
而且我可以看到 A 对象包含我要查找的信息 (myString)。
我应该在上面的脚本中更改什么才能在控制台上直接列出 myString 的内容?
当您调用 child
时,您将获得一个新的 FirebaseReference
-- 而不是数据快照。您需要 .on('value')
它来获取裁判的数据,但这很愚蠢,因为您已经有了数据。
相反,只需将快照的数据存储在局部变量中并对其进行操作。
ref.on("value", function(snapshot) {
for (x in snapshot.val()) {
var xRef = new Firebase("https://myApp.firebaseio.com/myList/"+x+"/");
xRef.once("value", function(xsnapshot) {
var data = xsnapshot.val();
var name = data["myString"];
console.log(name);
});
}
});
在 Firebase 上,我遇到了以下问题;我的数据结构如下:
myApp
- myList
- KKJJXX...1 myString: "String One"
- KKJJXX...2 myString: "String Two"
- KKJJXX...3 myString: "String Three"
我想做一些JavaScript(在我的网页中)来列出上面数据库中 myString 的值。 这是我在浏览网页后得出的结论。它在一定程度上起作用,但不完全是。 我可以在浏览器的调试控制台中看到我已经获得了我想要的数据。我在剧本之后更准确地写下了我的担忧。
<script>
var ref = new Firebase("https://myApp.firebaseio.com/myList/");
ref.on("value", function(snapshot) {
for (x in snapshot.val()) {
var xRef = new Firebase("https://myApp.firebaseio.com/myList/"+x+"/");
xRef.once("value", function(xsnapshot) {
var name = xsnapshot.child("myString");
console.log(name);
});
}
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
});
</script>
在调试控制台中我得到这条线(3 次):
Object { A: Object, Y: Object, g: Object }
而且我可以看到 A 对象包含我要查找的信息 (myString)。 我应该在上面的脚本中更改什么才能在控制台上直接列出 myString 的内容?
当您调用 child
时,您将获得一个新的 FirebaseReference
-- 而不是数据快照。您需要 .on('value')
它来获取裁判的数据,但这很愚蠢,因为您已经有了数据。
相反,只需将快照的数据存储在局部变量中并对其进行操作。
ref.on("value", function(snapshot) {
for (x in snapshot.val()) {
var xRef = new Firebase("https://myApp.firebaseio.com/myList/"+x+"/");
xRef.once("value", function(xsnapshot) {
var data = xsnapshot.val();
var name = data["myString"];
console.log(name);
});
}
});