液体块内{%raw%}

时间:2018-03-20 05:39:31

标签: jekyll liquid mustache

在Jekyll网站上使用mustache.js,是否可以在液体代码块中使用胡须变量?

类似的东西:

{% if liquidVar == {% raw %}{{ mustacheVar }}{% endraw %} %}
  // do something
{% endif %}

1 个答案:

答案 0 :(得分:1)

您提供的示例没有逻辑意义。液体{% if %}将仅在构建期间处理,运行时javascript变量将无法使用。

除此之外,如果你在jekyll上使用mustache.js,你会想要更改mustasche分隔符。

请参阅https://github.com/janl/mustache.js/#custom-delimiters

您最好的选择是全局覆盖它。这样可以避免在任何地方使用{% raw %}块污染代码。以下内容允许您将{| variable-name |}用于胡须变量

Mustache.tags = [ '{|', '|}' ];

可以在模板级别覆盖它,但是你需要将其转义

{% raw %}{{={| |}=}}{% endraw %}