如何在 Webtask.io Node/Express 无服务器应用程序中制作哈巴狗模板?

How to make a pug template render inside of Webtask.io Node/Express serverless app?

我正在尝试从我的 Webtask.io 无服务器节点应用程序中的路由渲染一个非常简单的 Pug 模板。这是我的尝试:

'use latest';
import express from 'express';
import pug from 'pug'

const app = express();    
app.set('view engine', 'pug');
...

  app.get('/', (req, res) =>
  {
    var page = `
    #message
        h1 Hello World Foo
        h2 pug's in the house`;

    const HTML = pug.render(page);

    res.status(200).send(HTML)
  });

...
module.exports = fromExpress(app);

这是我收到的错误:

Error: Pug:2:1
    1|
  > 2|     #message
-------^
    3|         h1 Hello World Foo
    4|         h2 pug's in the house

unexpected token "indent"

我已经将 Pug 注册为 Express 应用程序的视图引擎,但是,Pug 似乎没有被调用。我错过了什么?如何注册 Pug 以便它在 Webtask.io Node 应用程序中呈现模板?

我找不到任何使用 Pug 执行此操作的示例,但是,我找到了一个 post saying it's possible。这个 post 讨论 Webtask 编译器。我找不到你如何让 Pug 成为编译器。

我没有和帕格结婚。是否有更好的选择来从可与 Webtask 方法一起使用的模板中呈现动态 HTML?我用 Google 搜索了 Handlebars,但找不到示例。

感谢您的宝贵时间。

Pug 使用两个 space 缩进标准。这绝对是您看到的哈巴狗格式错误,因此已正确连接。

试试这个模板:

#message
  h1 Hello World Foo
  h2 pug's in the house