当在Pug模板中使用变量时,变量必须在将模板渲染为HTML之前传递给Pug。如果未正确传递变量,将会收到“变量未传递给Pug”的错误。
以下是解决此错误的几种常见方法:
使用Express框架: 确保在将模板渲染为HTML之前将变量传递给res.render()方法。例如:
app.get('/', function(req, res){
res.render('index', { variableName: 'value' });
});
然后,在Pug模板中使用传递的变量:
p= variableName
使用Pug模板引擎直接渲染: 如果你使用的是Pug模板引擎的CLI命令行工具,可以在命令行中传递变量。例如:
pug index.pug -O "{ \"variableName\": \"value\" }"
然后,在Pug模板中使用传递的变量:
p= variableName
使用模板继承: 如果你的Pug模板使用了模板继承,确保在父模板中传递变量,并在子模板中使用。例如:
父模板(layout.pug):
html
head
title My Website
body
block content
子模板(index.pug):
extends layout.pug
block content
p= variableName
然后,在使用模板引擎渲染子模板的代码中传递变量。
这些是解决“变量未传递给Pug”的常见方法,具体取决于你使用的框架或工具。确保在渲染Pug模板之前正确传递变量即可解决该错误。
上一篇:变量未传递给较低层级?
下一篇:变量未定义