我只想创建一个页面,但是我想将HTML代码分割成多个文件。
渲染此路线时,我希望渲染的文件从所有模板文件中获取内容并将其合并到一页。
例如,此模板应呈现以下文件:
我只想将代码分开,因为这样我就可以构建一个干净的结构。那可能吗?目前,我只能渲染一个文件
router.get('/', (req, res) => {
res.render('myTemplate');
});
如果有一种默认HTML逻辑的方法,我不需要使用 Handlebars (手把),因为我的页面只有一个模板。
答案 0 :(得分:1)
假设您要渲染一个文件,即您的主文件,并在其中包含页眉和页脚文件。让我们将主文件main.hbs和页眉和页脚html文件称为header.html和footer.html
您的路线代码如下所示:
router.get('/', (req, res) => {
res.render('main');
});
header.html
<h1> Hi I'm the Header </h1>
footer.html
<h1> Hi I'm the Footer </h1>
您可以使用jQuery将页眉和页脚模板包含在主模板中
main.hbs
<html>
<head>
<title></title>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(function(){
$("#header").load("header.html");
$("#footer").load("footer.html");
});
</script>
</head>
<body>
<div id="header"></div>
<!--Remaining section-->
<div id="footer"></div>
</body>
</html>
类似地,您可以通过指定其ID将Intro,Service,About,Contact,Imprint文件包含在主文件中。