使用Express 4呈现原始HTML视图
我打算从我的Express应用程序中的Jade移回到原始HTML,但是我想确保我没有失去任何模板引擎的优势,所以我想要一个解决scheme:
- 将cachingHTML
- 允许我指定一个相对于views目录的path(比如Jade),而不必为每个路由添加
path.join(__dirname, "views")
。
这里最好的解决scheme是什么?
为了解决这个问题,我使用了快速响应对象的简单sendFile方法。 这是一个用例:
var express = require('express'); var router = express.Router(); var path = require('path'); var views = function (view) { path.join(__dirname, '../views/', view); }; router.get('/', function (req, res) { res.sendfile(views('index.html')); });
请注意,您可以将views
function写入另一个文件,导出并在每个需要的路由器中进行导入。
sendFile方法接受可用于caching目的的maxAge
参数。
你是对的模板引擎开销。 在我的testing中,我从服务器得到了120〜150ms的更快的响应时间,使用原始的html代替了用html导入的jade。