如何计算 Liquid 中的变量 +1
How to count variable +1 in Liquid
我完全被如何计算通过 {% assign var = 0 %}
分配的变量加一所困扰。这应该是最简单的任务。到目前为止,这是我尝试过的方法:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% assign amount = amount + 1 %}
{% endfor %}
Amount: {{ amount }}
结果总是0
。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取 运行.
的迭代次数
因为{{ increment amount }}
会输出你的变量值,而不会影响{% assign %}
定义的变量,我建议你使用{% capture %}
:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% capture amount %}{{ amount | plus:1 }}{% endcapture %}
{% endfor %}
Amount: {{ amount }}
我同意这很冗长,但据我所知这是唯一可行的解决方案。
这对我有用,而且不那么冗长:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% assign amount = amount | plus:1 %}
{% endfor %}
此外,它看起来像 capture
returns 一个字符串而不是一个整数,因此如果您想执行类似 [=13] 的操作,则必须将 amount
转换为一个整数=].
我完全被如何计算通过 {% assign var = 0 %}
分配的变量加一所困扰。这应该是最简单的任务。到目前为止,这是我尝试过的方法:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% assign amount = amount + 1 %}
{% endfor %}
Amount: {{ amount }}
结果总是0
。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取 运行.
因为{{ increment amount }}
会输出你的变量值,而不会影响{% assign %}
定义的变量,我建议你使用{% capture %}
:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% capture amount %}{{ amount | plus:1 }}{% endcapture %}
{% endfor %}
Amount: {{ amount }}
我同意这很冗长,但据我所知这是唯一可行的解决方案。
这对我有用,而且不那么冗长:
{% assign amount = 0 %}
{% for variant in product.variants %}
{% assign amount = amount | plus:1 %}
{% endfor %}
此外,它看起来像 capture
returns 一个字符串而不是一个整数,因此如果您想执行类似 [=13] 的操作,则必须将 amount
转换为一个整数=].