是否有一个模板包,开箱即用的快速模板渲染?

时间:2018-02-12 01:06:57

标签: node.js express template-engine stenciljs

我已尝试(并且失败)使用3个不同的Stencil包与node / express。 (stencil,stencil-js,@ stencil)。特别是,我正在寻找一个允许我进行标准表达模板渲染的包,如:

npm install stencil

.
.
app.engine('stencil', require('stencil').renderFile);
app.set('view engine', 'stencil');

.
.
app.get('/', function(req, res, next) {
    // Where 'somepage' is /views/somepage.stencil
    res.render('somepage', { title: 'Stencil Test' });
});

我尝试的软件包似乎用于其他目的,即没有render函数和/或您将与app.engine()函数一起使用的回调方法。我可能会忽略这一显而易见的事情,因为Stencil似乎很受欢迎(kitura等),并且似乎与表达自然契合。

1 个答案:

答案 0 :(得分:0)

嗯,你所说的也许你正在寻找SSR(服务器端渲染)?

您有一个关于如何使用Express

在服务器上呈现页面的示例
const express = require('express');
const stencil = require('@stencil/core/server');

// create the express app
const app = express();

// load the stencil config and
// express serve-side rendering middleware
const { wwwDir, logger } = stencil.initApp({
  app: app,
  configPath: __dirname
});

// serve static files
app.use(express.static(wwwDir));

// set which port express it will be listening on
const port = 3030;

// start listening and handling requests
app.listen(port, () => logger.info(`server-side rendering listening on port: ${ port }`));

您可以找到有关SSR here

的更多信息