我想用哈巴狗和nodejs制作一个时钟
node
let clock
function getClock() {
~
clock = `${hours}:${minutes}:${seconds}`;
}
app.get("/main", (req, res) => {
~
res.render("mainP.pug", { lists: rows, getClock: getClock(), clock:clock });
});
});
pug
script
- setInterval(getClock(), 1000);
body
.header
.clock#clock= clock
错误是 getClock 不起作用,我该如何解决它?
您无法序列化 Node.js 程序中定义的函数并将其发送到浏览器。
相反,在 HTML 文档中生成一个
<script>
元素,其中包含 (a) 函数的源代码作为其中的文本节点,或者 (b) 指向可以下载脚本的 URL 的 src
属性.
您还需要将生成
hours
、minutes
和 seconds
值的逻辑移至该脚本中,或使用其他页面加载/Ajax/WebSockets 从服务器获取它们的值。