在Pug(曾被称为Jade)模板引擎中,如果你想在each
循环之外使用某个变量,并且希望这个变量是全局可用的,你可以使用Pug的全局变量功能。Pug没有直接的全局变量声明方式,但你可以通过几种方法来实现类似的效果。
你可以在each
循环之前声明一个局部变量,然后在循环外部引用它。
- var globalVar = 'I am global';
each item in items
p= item
p= globalVar
在这个例子中,globalVar
在each
循环之前被声明,并且在循环之后被使用。
block
和extends
如果你在使用Pug的继承功能,你可以在父模板中定义一个块(block),然后在子模板中填充这个块,并在父模板的任何地方引用这个块中的变量。
// parent.pug
doctype html
html
head
title My Page
body
block content
- var globalVar = 'I am global';
each item in items
p= item
p= globalVar
// child.pug
extends parent
block content
- var items = ['item1', 'item2', 'item3']
在这个例子中,globalVar
在父模板的block content
中被声明,并且在同一个模板的其他地方被引用。
mixin
你可以定义一个mixin,在mixin中声明变量,然后在需要的地方包含这个mixin。
// mixins.pug
mixin globalVarMixin
- var globalVar = 'I am global'
// main.pug
include mixins
+globalVarMixin
each item in items
p= item
p= globalVar
在这个例子中,globalVar
在globalVarMixin
中被声明,并且在包含这个mixin的模板中可用。
以上方法可以帮助你在Pug模板中创建和使用全局变量。根据你的具体需求,你可以选择最适合你的方法。
领取专属 10元无门槛券
手把手带您无忧上云