我想创建一个只有一条路径的页面,但是我想把HTML代码拆分为多个文件。
在呈现这条路线时,我希望呈现的文件从所有模板文件中获取内容,并将其合并到一个页面中。
例如,此模板应呈现以下文件:
我只想保持代码的分离,因为这样我就可以建立一个干净的结构。这有可能吗?目前我只能渲染一个文件
router.get('/', (req, res) => {
res.render('myTemplate');
});
如果有默认的HTML逻辑,我不需要使用Handlebar,因为我的页面只有一个模板。
发布于 2018-06-25 01:38:09
假设您希望呈现一个文件,该文件是您的主文件,并在其中包含页眉和页脚文件。让我们将主文件称为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中包含页眉和页脚模板
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文件包含在您的主文件中。
https://stackoverflow.com/questions/51012050
复制相似问题