javascript - 使用带有动态字段的 HTML 在 Express Node JS 框架中呈现响应

标签 javascript html node.js express

我可以在不使用 Jade 的情况下路由到简单的 html 文件,只需将路由文件夹 index.js 文件下的代码替换为以下代码即可:

router.get('/', function(req, res){
res.sendFile('index.html', { root: path.join(__dirname, '../views') });

});

HTML 代码:

 <html>
<head></head>
<body>
<p>Hi!</p>
</body>
</html>

如何替换“嗨!”带有类似 Jade 的 #{myvalue} 标签的静态字符串? 例如,我想在 p 标签中添加当前日期时间。 该文件可能不是 .html,因为它是静态的,而是 .js 或任何其他文件。我正在寻找类似 .php 文件的东西。 我是express和node.js的新手,我只是想知道我的 View 是否可以不使用jade风格而是使用html风格?

最佳答案

您可以在 Jade 中使用 HTML

index.jade:

<html>
<head></head>
<body>
<p>#{myvalue}</p>
</body>
</html>

只需将其渲染为 Jade

res.render('index.jade');

*警告*:缩进会引发错误。因为显而易见的原因,缩进被 jade 解释为标签的范围。

所以这行不通:

<html>
    <head></head>
    <body>
        <p>#{myvalue}</p>
    </body>
</html>

解决方案可以使用带有 trailing dot operator 的父标签。 ,以便其中的所有内容都被视为纯文本(即 HTML,如果您使用标签)。所以这会起作用:

html.
    <head></head>
    <body>
        <p>#{myvalue}</p>
    </body>

关于javascript - 使用带有动态字段的 HTML 在 Express Node JS 框架中呈现响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30934032/

相关文章:

html - 如何使溢出: hidden really hide content?

node.js - Redux-Thunk "Actions must be plain objects. Use custom middleware for async actions."

javascript - SSE 与刷新 js 命令?

javascript - 抛出新错误 ('Mongoose is not connected' );

javascript - 阻止 $(this) 元素上的事件

node.js - Node/IO.js 需要项目根目录吗?

node.js - Expressjs POST 错误 : TypeError: Cannot read property 'title' of undefined

javascript - Angular - URL 已更改但未加载 View

javascript - 我如何默认检查单选按钮?

html - 使用 CSS 背景样式 <li> 元素,仅显示部分图像