Shopify 液体。使用if条件在数组中循环,然后希望将该条件的输出存储在另一个数组中

Shopify 液体。使用if条件在数组中循环,然后希望将该条件的输出存储在另一个数组中,shopify,liquid,Shopify,Liquid,我想把这个for循环的输出放到另一个数组中。有什么想法吗?欢迎光临,吉特 首先,你永远不会嵌套液体标签。您的基本循环应该如下所示: {% assign leg = {{Predept.legs}} %} {% for legs in {{leg}} %} {% if {{leg[forloop.index0].direction}} == 'R' %} {{leg[forloop.index0].arr_station_name}} {%endif %} {%e

我想把这个for循环的输出放到另一个数组中。有什么想法吗?

欢迎光临,吉特

首先,你永远不会嵌套液体标签。您的基本循环应该如下所示:

{% assign leg = {{Predept.legs}} %}
{% for legs in {{leg}} %}
  {% if {{leg[forloop.index0].direction}} == 'R' %}
            {{leg[forloop.index0].arr_station_name}} 
  {%endif %}
{%endfor %}
这将为我们提供所需支腿的所有
arr_station_name
的数组,但您可能会注意到
capture
也会捕获其中的所有空白。如果我们需要防止它进入我们漂亮的小数组,我们可以使用标记上的空格剥离
-
字符来控制它,给出:

{% capture leg_data %}
  {% assign legs = Predept.legs %}
  {% for leg in legs %}
    {% if leg.direction == 'R' %}
      {% comment %}Output delimiter if needed {% endcomment %}
      {% unless found_one %},{% endunless %}
      {% assign found_one = true %}
      {{ leg.arr_station_name }}
    {% endif %}
  {% endfor %}
{% endcapture %}

{% assign leg_data = leg_data | split: ',' %}
希望这有帮助

欢迎你,吉特

首先,你永远不会嵌套液体标签。您的基本循环应该如下所示:

{% assign leg = {{Predept.legs}} %}
{% for legs in {{leg}} %}
  {% if {{leg[forloop.index0].direction}} == 'R' %}
            {{leg[forloop.index0].arr_station_name}} 
  {%endif %}
{%endfor %}
这将为我们提供所需支腿的所有
arr_station_name
的数组,但您可能会注意到
capture
也会捕获其中的所有空白。如果我们需要防止它进入我们漂亮的小数组,我们可以使用标记上的空格剥离
-
字符来控制它,给出:

{% capture leg_data %}
  {% assign legs = Predept.legs %}
  {% for leg in legs %}
    {% if leg.direction == 'R' %}
      {% comment %}Output delimiter if needed {% endcomment %}
      {% unless found_one %},{% endunless %}
      {% assign found_one = true %}
      {{ leg.arr_station_name }}
    {% endif %}
  {% endfor %}
{% endcapture %}

{% assign leg_data = leg_data | split: ',' %}

希望这有帮助

但愿不是这样!Shopify实现Liquid的局限性让我们有很多需要改进的地方(还有很多像上面提到的那样笨拙的解决方法),我希望它不是这样!Shopify实现Liquid的局限性让我们有很多不尽如人意的地方(还有很多像上面提到的那样笨拙的解决方法)