我试图将我的nodejs / express后端的一些值传递给模板(使用res.render({...})),将其存储在一些变量中,然后将其传递到前端(usecase是我需要对传递的值进行一些温和的计算并将它们存储在一些中间变量中)
我知道我可以在哈巴狗档案中这样做
block append script
script.
const foo = parseInt(#{stat.get('fooStat')}, 10);
但后来似乎我不能在我的哈巴狗模板中引用这个,比如说
span #{foo}
值是空的,我猜是因为它是未定义的...通常的方法是什么。
在script
标记信号之后添加句点以表示它的内容应该被视为计划文本。当您想要为客户端消费编写javascript时,这很方便,但是声明的任何变量都是pug无法访问的。
script.
const foo = 10;
span #{foo} // foo is undefined here
如果要定义pug稍后可以在模板中使用的变量,请使用unbuffered code执行此操作。
- const foo = 10
span #{foo} // renders <span>10</span>