codecamp

Pug 代码 Code

代码 Code

Pug 为您在模板中嵌入 JavaScript 提供了可能。这里有三种类型的代码。

不输出的代码

用 - 开始一段不直接进行输出的代码,比如:

- for (var x = 0; x < 3; x++)
  li item

 渲染后:

<li>item</li>
<li>item</li>
<li>item</li>

Pug 也支持把它们写成一个块的形式:

-
  var list = ["Uno", "Dos", "Tres",
          "Cuatro", "Cinco", "Seis"]
each item in list
  li= item

渲染后:

<li>Uno</li>
<li>Dos</li>
<li>Tres</li>
<li>Cuatro</li>
<li>Cinco</li>
<li>Seis</li>

带输出的代码

用 = 开始一段带有输出的代码,它应该是可以被求值的一个 JavaScript 表达式。为安全起见,它将被 HTML 转义:

p
  = '这个代码被 <转义> 了!'

渲染后:

<p>这个代码被 &lt;转义&gt; 了!</p>

也可以写成行内形式,同样也支持所有的 JavaScript 表达式:

p= '这个代码被 <转义> 了!'

渲染后:

<p>这个代码被 &lt;转义&gt; 了!</p>

不转义的、带输出的代码

用 != 开始一段不转义的,带有输出的代码。这将不会做任何转义,所以用于执行用户的输入将会不安全:

p
  != '这段文字 <strong>没有</strong> 被转义!'

渲染后:

<p>这段文字 <strong>没有</strong> 被转义!</p>

同样也可以写成行内形式,支持所有的 JavaScript 表达式:

p!= '这段文字' + ' <strong>没有</strong> 被转义!'

渲染后:

<p>这段文字 <strong>没有</strong> 被转义!</p>
危险

不转义的输出可能是危险的,您必须确保任何来自用户的输入都是安全可靠的,以防止发生跨站脚本攻击(XSS)。



Pug 分支条件 Case
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }