前言

Pug 的前身是 Jade。

原生支持的语法

之所以单独拿出来归纳记录,是因为需要非常清楚再 pug 模板中可以用什么原生支持的语法来加速开发。

原生支持,也就是在模板文件中,不用什么标记前缀,可以直接写的:

  • case-when-default: 就相当于 js 中的 switch-case 语法块
  • each-in: 循环,相当于 js 中的 for 语法块
  • while: 循环
  • if-else
  • unless
  • include: 不仅可以 include 模板文件,还可以是样式和脚本文件,只不过都会以文本方式插入
  • extends-block-[append/prepend]: 模板继承
  • mixin-+: 混合,像函数一样可以复用

标记 ‘-‘

  • -:以前缀标记 - 开头,后面要跟 js 标准语句
  • =:该标记后面跟的也是 js 标准语句,可以有变量什么的,同时会被安全转义
  • !=:该标记后面的语句不会被安全转义

插值

插值符号:

  • #{variable or js_expression}: 变量值或者对表达式求的值会被安全地转义
  • !{variable or js_expression}: 变量值或者对表达式求的值不会被转义
  • \#{variable}: 原样输出
  • #[tag content]:插入标签及其内容

参考链接