【问题标题】:Shopify liquid: differences between {% %} and {%- -%}Shopify 液体:{% %} 和 {%- -%} 之间的区别
【发布时间】:2019-09-10 07:11:15
【问题描述】:

谁能帮我区分{% %}{%- -%}。这些语法之间有什么区别。在我的所有用法中,我可以使用任何主题

【问题讨论】:

标签: shopify liquid


【解决方案1】:

唯一的区别是一个去除空白而另一个不去除。

所以这个{% %} 将保留它周围的任何空白。

而这个{%- -%} 将去除空白。

这同样适用于{{ }}{{- -}}

或者为了更简单,{{- -}}{{ }} 相同,但应用了条形过滤器,因此它变为 {{ | strip }}

您可以将其视为剥离内容的速记方法。

【讨论】:

  • 关闭,但不完全:破折号将去除标签周围的空白,而strip 过滤器将去除标签结果中的空白。请参阅help.shopify.com/en/themes/liquid/basics/whitespace - 例如,如果你有一个 for 循环,里面有一堆 Liquid 逻辑,你最终会在生成的 HTML 中打印很多空行。但是,如果您的所有流动标签都包含连字符,则生成的 HTML 将不会包含标签之间的所有空行。
  • 谢谢。那么,我们应该一直使用{%- -%}{{- -}} 吗?
  • @quyetdc - “总是”这个词有点强 - 有时去除空格可能会导致一些意想不到的效果,尤其是在内联转储中。示例:class="some-class {{ settings.some_value }}" 很好,但 {{ class="some-class {{- settings.some_value -}}" 可能不是。我当然愿意说 通常 使用空格剥离符号来清理生成的 HTML 是一个好主意 :)
猜你喜欢
  • 1970-01-01
  • 2012-06-06
  • 1970-01-01
  • 2017-08-06
  • 2021-03-06
  • 2020-08-22
  • 1970-01-01
  • 2017-01-16
  • 2013-01-18
相关资源
最近更新 更多