我试图创建包含登录表单的主页(node.js 和 mongoDB 应用程序的一部分)。为了添加视图部分,我包含了带有返回 HTML 的函数的 js 文件,但我可以看到更好的是使用模板引擎。一切都很好,直到我在另一个中包含一个已编译的 swig 部分。主页输出正常,但登录部分输出类似于页面上的文本。如何将登录 HTML 输出为 HTML 而不是纯文本?
是否需要更多信息才能理解该问题?
先感谢您。
var swig = require('swig');
var mainPage_tpl = swig.compileFile(__dirname+'/../views/mainpage_tpl.html');
var formLogin_tpl = swig.compileFile(__dirname+'/../views/login_tpl.html');
var loginOutput = formLogin_tpl();
var mainPageOutput = mainPage_tpl({
title: 'Sometitle',
pagetitle: 'Somepagetitle',
content: loginOutput
});
exports.get = function(req, res){
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(mainPageOutput);
res.end();
}
mainpage_tpl.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>{{title}}</title>
<link rel="stylesheet" href="/assets/reset.css" />
<link rel="stylesheet" href="/assets/style.css" />
<script type="text/javascript" src="/assets/jquery-2.0.0.js"></script>
<script type="text/javascript" src="/assets/script.js"></script>
</head>
<body id="login_page">
<h1>{{pagetitle}}</h1>
<div id="content">{{content}}</div>
</body>
</html>