Javascript 如何将html呈现到页面中,而不是作为整个视图呈现到Node.js+;快速应用程序?

Javascript 如何将html呈现到页面中,而不是作为整个视图呈现到Node.js+;快速应用程序?,javascript,html,node.js,express,Javascript,Html,Node.js,Express,意图 我需要将hmtl的一部分呈现到一个页面中 问题 呈现页面时没有样式或布局 我有一个页面,我需要在纯html,而不是翡翠。但仍将在其他地方使用翡翠 我接着找到了一个可以直接指向html页面的。但是样式和布局如果没有被传递进来 我的上一页是cases.jade,开始时是这样的 extends layout block content .row .twelve.columns h1 title app.get('/cases', function (req, res

意图
我需要将hmtl的一部分呈现到一个页面中

问题
呈现页面时没有样式或布局


我有一个页面,我需要在纯html,而不是翡翠。但仍将在其他地方使用翡翠

我接着找到了一个可以直接指向html页面的。但是样式和布局如果没有被传递进来

我的上一页是
cases.jade
,开始时是这样的

extends layout

block content
  .row
    .twelve.columns
      h1 title
app.get('/cases', function (req, res)
{
  res.render('cases.html');
});
现在我的新页面是
cases.html
,开始时是这样的

<div class="row">
  <div class="twelve columns">
    <h1>Before &amp; After Case Gallery</h1>
上面有这个吗

app.set('views', __dirname + '/views');
app.engine('html', require('ejs').renderFile);

在您的jade文件中,您正在扩展布局页面,因此您包含了所有布局信息。但是在HTML版本中,您没有导入任何布局信息

我看你在用。查看布局,查看要在模板中添加的内容:

<% include head %>
<h1>Title</h1>
<p>My page</p>
<% include foot %>

标题
我的页面


在这里,您需要使用
layout.html
中的布局页面内容执行类似于
的操作。
include
行基本上会将文件内容复制粘贴到该位置。

为什么从Jade切换到HTML?@Šimevid以及这个特定页面有很多嵌套元素。我对jade还不熟悉,html到jade的转换器有很多空格,我最终不得不修改。在这一点上,我只想让它的功能。以后我可以转换。但我不想减慢交付日期,我可以在优化布局后进行转换。问题是layout.jade应该包装HTML代码,所以
无法在开箱即用。OP必须将paste layout.jade复制到两个文件中。因此,您可能建议制作一个
版本的
页脚
,该版本的列表与我的
layout.jade
中的列表相同?因为否则我就不必制作一个
layout.html
并将其列为“案例”视图的模板了?好吧,这确实有效,您在上下文中回答。我只更改了
。但是我的项目现在的布局有点粗糙。我真诚地建议你坚持使用一个更强大的模板系统,比如jade。有很多javascript模板系统(甚至像mustasche这样的东西也可以使用)。不过,你可能有你做出这种改变的理由。在mustasche中,您可以创建一个“布局”模板,将“内容”作为参数,并以这种方式呈现布局。