javascript - When I take data from Firebase My Html page shows [object Object]
问题描述
function snapshotToArray(snapshot) {
var returnArr = [];
snapshot.forEach(function(childSnapshot) {
var item = childSnapshot.val();
item.key = childSnapshot.key;
returnArr.push(item);
});
return returnArr;
};
firebase.database().ref('books').on('value', function(snapshot) {
const list_div = document.querySelector("#list");
list_div.innerHTML += "<div class='list-item'><h3></h3>" + snapshot.val() + "</div>"
console.log(snapshotToArray(snapshot));
});
<div class="main-list" id="list">
<div class="list-item">
<h3>Kitaplarım:</h3>
</div>
</div>
I've been trying to solve it for 3 days
解决方案
HTML 不会理解 js 对象,因此您必须将所有值作为字符串传递,在当前情况下snapshot.val()
是一个对象,要克服这个问题,您可以简单地替换snapshot.val()
为JSON.stringify(snapshot.val())
推荐阅读
- html - 页面对齐,在手机浏览时如何将页面置于中心?
- sql - 在 Hive 中使用 groupby 函数获取类别计数,但输出表中缺少一个类别,因为数据在输入表中不可用
- php - 单击收音机并将值回显到 php(wordpress 主题)
- javascript - 为什么我的 HTML POST 请求表单没有通过 Express app.post?如何将数字变量传递给另一个 POST 请求?
- python - python中的奇怪情节
- encryption - 与数字签名相比,数字证书的私钥/公钥组合
- vb6 - 在 VB6 中将指纹传感器与 arduino 连接
- python - 从父目录导入函数
- ruby - 为什么 Sorbet 认为我在 RBI 文件中提供显式签名的方法不存在?
- c++ - C++ - 理解 xvalues 的例子