我正在尝试使用PugJS创建一个简单的模板,但是我无法从传递给渲染器的对象中读取数据。这就是我所拥有的:

// main.js -- nodejs + expressjs

const defaultUser = { isAnonymous: true, name: 'test' };
app.get('/', (req, res) => {
    res.send(pug.compileFile(__dirname + '\\views\\index.pug', defaultUser));
});




// index.pug -- the template I'm having trouble with

doctype html
html
    head
        if #{isAnonymous}
            title Test page
        else
            title #{name} - Test page


我在模板的第4行收到语法错误(意外字符'#'):

  > 4|      if #{isAnonymous}
------------^


这是为什么?

最佳答案

您无需在此处引用isAnonymous,该行以“ if”开头,因此将其视为javascript。

doctype html
html
    head
        if isAnonymous
            title Test page
        else
            title #{name} - Test page

关于node.js - PUGJS-如何从本地人访问数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48244253/

10-10 15:02