分支结构
本节主要介绍,如果通过使用分支结构,实现在不同条件下,执行不同的代码块。
主要包含以下内容:
if
用于实现在指定条件下,才执行代码块。示例如下:
输入:
<!-- product.name是 '指定商品' -->
{% if product.name == '指定商品' %}
指定商品详情
{% endif %}
输出:
指定商品详情
elsif/else
用于实现在if
或unless
语句中,加入更多的判断条件。示例如下:
输入:
<!-- customer.name是 'anonymous' -->
{% if customer.name == 'jack' %}
你好,jack!
{% elsif customer.name == 'anonymous' %}
你好,匿名用户!
{% else %}
你好,访客!
{% endif %}
输出:
你好,匿名用户!
case/when
用于匹配变量等于指定值时,才执行代码块。示例如下:
输入:
{% assign keyword = '收腰' %}
{% case keyword %}
{% when '收腰' %}
收腰款式
{% when '直筒' %}
直筒款式
{% else %}
既不是收腰,也不是直筒
{% endcase %}
输出:
收腰款式
unless
和if
类似,用于实现当不满足指定条件时,执行代码块。示例如下:
输入:
<!-- product.name是 '指定商品' -->
{% unless product.name == '普通商品' %}
这不是普通商品
{% endunless %}
输出:
这是指定商品
上面的示例,也可以用if
实现:
{% if product.name != '普通商品' %}
这不是普通商品
{% endif %}