我正在尝试使用Google Firebase在浏览器客户端之间保持网页同步。这是一个非常简单的页面,只有两个文本字段:
<input class="firebase" id="text1">
<input class="firebase" id="text2">
<input type="button" value="test" onclick="setData()">
Firebase似乎都已正确设置。单击提交按钮后,它将执行以下操作:
function setData()
{
docData = [];
$('.firebase').each(function (index, value)
{
docData[$(this).attr('id')] = $(this).val();
});
console.log(docData);
db.collection("test").doc("12345").set(Object.assign({}, docData));
}
到目前为止,效果很好,我可以在Firebase控制台上看到实时更新的数据。
但是,我希望这样做,以便在更新Firebase文档时,页面上的文本字段(对于正在查看该页面的其他任何人)都自动使用新值进行更新。
我的网站上没有安装Node.JS,甚至不知道从哪里开始安装它。
有什么简单的方法可以使这些字段在客户端之间保持同步?
答案 0 :(得分:2)
如果要实时更新,只需使用onSnapshot
方法:
db.collection("cities").doc("SF")
.onSnapshot(function(doc) {
console.log("Current data: ", doc.data());
});
有关更多详细信息,请参见documentation。