【发布时间】:2018-04-26 11:31:05
【问题描述】:
我正在尝试在 Node.js 网站上制作实时更新提要,以便从 Firebase 实时数据库中提取更新。我设法在页面打开时加载更新,但我正在努力让它们实时更新。具体来说:我不知道如何通过 Handlebars 传递数据库引用对象。
所以现在我从数据库中提取更新:
const getUpdates = () => {
return new Promise((resolve, reject) => {
try {
const ref = firebaseApp.database().ref('liveUpdates');
resolve(ref.once("value"), ref);
} catch (e) {
reject(e);
}
});
};
然后渲染页面:
exports.loadDashboard = (req, res) => {
getUpdates().then((updates, ref) => {
const updatesList = updates.val();
res.render('index', { updatesList, ref });
return;
});
};
然后我想在 .hbs 文件中做这样的事情:
<script>
var updates = {{{json ref}}};
updates.on("value" () => {
//Handle update
});
</script>
json Handlebars 助手:
json: (content) => {
return JSON.stringify(content);
}
使用这种方法,行 var updates = {{{json ref}}};抛出错误:
Uncaught SyntaxError: Unexpected token ;
那我做错了什么?我以前很少使用 Handlebars,所以请原谅我的无知。
【问题讨论】:
标签: node.js firebase firebase-realtime-database handlebars.js