Jade 中 mixin 的条件 "if"

Condition "if" in mixin in Jade

我正在寻找在mixin中使用"if"的方法。

mixin fn(a)
    if a == "some"
        ...
    else
        ...

+fn("some")

不幸的是,它不起作用。似乎 "if" 无法获取参数 "a"。我该怎么办?

我认为您编译的代码中存在一些缩进问题。它在 CodePen 上运行良好。您可以编辑翡翠以添加更多条件。

mixin fn(name)
  if name == "amit"
    h2 Hello
  else
    h4 World

+fn("amit")

如果您使用的是数组:

 mixin fn(a) 
 if a[0]== "a1"
    return var1
  else if a[1]== "a2"
    return var2

h2 #[+fn(["a21","a2"])]

h2 #[+fn(["a1","a2"])]

我也更新了 CodePen 以涵盖数组。我添加了更多示例来涵盖不同的方法。