有条件地在 liquid 文件中应用两个不同的 类 -- 无法正常工作

conditionally apply two different classes in liquid file --not working properly

我有一个场景,class 属性中的两个 IF 条件破坏了功能。

只有一个 IF 条件在不破坏功能的情况下完美运行。

<li class="{% if item.dropdown %}has-dropdown{% endif %} {% if item.active %}active{% endif %}">  
  ..........
</li>

这里class属性有两个IF条件。 我想要一种没有两个 IF 条件的方法,我们可以在液体模板中实现相同的场景。

class 属性中删除 {% if %} 条件的一种方法是:

  1. 预先创建一个包含 class 名称的液体变量
  2. 打印class属性中的变量值
{% assign custom_classes = '' %}
{% if item.dropdown %}
  {% assign custom_classes = custom_classes | append: 'has-dropdown ' %}
{% endif %}
{% if item.active %}
  {% assign custom_classes = custom_classes | append: 'active ' %}
{% endif %}

<li class="{{ custom_classes }}">  
  ...
</li>