/

本页目录

条件语句

.if 函数用于创建条件语句:

  1. 第一个参数是要评估的 boolean 条件。
  2. 第二个参数是一个无参数的 lambda ,仅在条件为真时运行。

示例 1

.if {yes}
    Hello, Quarkdown!

Hello, Quarkdown!

嵌套

如果函数满足条件则返回 lambda 的结果,否则返回空。这意味着该函数会将内容向上传播到调用栈中。

示例 2

<!-- 请从下往上阅读 -->

.if {yes}
    .if {no}
        .if {yes}
            .if {yes}
                Hello!

这种行为让你可以将该函数用作任意表达式的一部分。例如,你可以用它在布局函数(如堆栈 )内部条件性地包含内容。

示例 3

.row gap:{1cm}
    A

    .if {.iseven {3}}
        B

    C

A

C

取反

.ifnot 函数是一个简写,用于反转 .if 的行为,仅在条件满足时才返回一个值。

Quarkdown 目前还没有 else 语句,但你可以使用 .let 函数来模拟:

示例 4

.let {.iseven {3}}
    condition:
    .if {.condition}
        3 is even!
    .ifnot {.condition}
        3 is odd!

3 is odd!

提示:.ifnot {.condition} 等价于 .if {.condition::not}