tag:变量-Variable
变量-Variable
- assign
- capture
- decrement
- increment
assign
创建一个新变量。
语法:
- variable_name: 正在创建的变量的名称。
- value: 您想要分配给变量的值。
{% assign variable_name = value %}
举例:
// 1.数据
{
"product": {
"title": "Health potion"
}
}
// 2.代码
{%- assign product_title = product.title | upcase -%}
{{ product_title }}
// 3.输出
HEALTH POTION
capture
创建一个具有字符串值的新变量。和assign不同的是,capture可以创建复杂逻辑的字符串。
语法:
- variable:正在创建的变量的名称
- value:您想要分配给变量的值。
{% capture variable %}
value
{% endcapture %}
举例:
// 1.数据
{
"product": {
"title": "Health potion"
}
}
// 2.代码
{%- assign up_title = product.title | upcase -%}
{%- assign down_title = product.title | downcase -%}
{%- assign show_up_title = true -%}
{%- capture title -%}
{% if show_up_title -%}
Upcase title: {{ up_title }}
{%- else -%}
Downcase title: {{ down_title }}
{%- endif %}
{%- endcapture %}
{{ title }}
// 3.输出
Upcase title: HEALTH POTION
上面的例子逻辑大致为:
- 变量定义:
{%- capture title -%}
部分,创建了一个变量title
,值为标签内部的逻辑(根据逻辑,值为:HEALTH POTION) - 变量输出:
{{ title }}
decrement
创建一个新变量,默认值为 -1,每次后续调用时该变量的值都会减少 1。
语法:
{% decrement variable_name %}
举例:
// 1.代码
{% decrement variable %}
{% decrement variable %}
{% decrement variable %}
// 2.输出
-1
-2
-3
increment
创建一个新变量,默认值为 0,每次后续调用都会增加 1。
语法:
{% increment variable_name %}
举例:
// 1.代码
{% increment variable %}
{% increment variable %}
{% increment variable %}
// 2.输出
0
1
2