意图
我需要将hmtl的一部分渲染到页面中。
问题
正在呈现的页面没有样式或布局。
我有一个页面,我需要用简单的HTML而不是玉。但仍将在其他地方使用玉。
我跟着一个similar question,它可以直接转到一个html页面。但是如果没有传入样式和布局。
我的上一页是cases.jade
,就像这样开始
extends layout
block content
.row
.twelve.columns
h1 title
现在,我的新页面为cases.html
,并按此开始
<div class="row">
<div class="twelve columns">
<h1>Before & After Case Gallery</h1>
并被路由到这样
app.get('/cases', function (req, res)
{
res.render('cases.html');
});
并将其置于上方
app.set('views', __dirname + '/views');
app.engine('html', require('ejs').renderFile);
答案 0 :(得分:1)
在您的jade文件中,您正在扩展布局页面,因此您可以包含所有布局信息。但是在HTML版本中,您不会导入任何布局信息。
我看到你正在使用ejs。查看布局,了解要放入模板的内容:
<% include head %>
<h1>Title</h1>
<p>My page</p>
<% include foot %>
在这里,您需要执行<%include layout %>
之类的内容,并将您的布局页面内容放在layout.html
中。 include
行基本上会将文件的内容复制粘贴到该位置。