case 是 JavaScript 的 switch 指令的縮寫,并且它接受如下的形式:
- var friends = 10
case friends
when 0
p 您沒有朋友
when 1
p 您有一個朋友
default
p 您有 #{friends} 個朋友
渲染后:
<p>您有 10 個朋友</p>
您可以像 JavaScript 中的 switch 語句那樣使用傳遞(fall through)。
- var friends = 0
case friends
when 0
when 1
p 您的朋友很少
default
p 您有 #{friends} 個朋友
渲染后:
<p>您的朋友很少</p>
不同之處在于,在 JavaScript 中,傳遞會在明確地使用 break 語句之前一直進行。而在 Pug 中則是,傳遞會在遇到非空的語法塊前一直進行下去。
在某些情況下,如果您不想輸出任何東西的話,您可以明確地加上一個原生的 break 語句:
- var friends = 0
case friends
when 0
- break
when 1
p 您的朋友很少
default
p 您有 #{friends} 個朋友
渲染后:
?
您也可以使用塊展開的語法:
- var friends = 1
case friends
when 0: p 您沒有朋友
when 1: p 您有一個朋友
default: p 您有 #{friends} 個朋友
渲染后:
<p>您有一個朋友</p>
更多建議: