有人可以解释一下这些代码吗?我知道我们正在设置hl
以纠正其min是否低于highlited min,但我不明白为什么我们在打开粗体HTML代码后完成if
块。我不应该在所有粗体代码之后添加endif
吗?
{% set hl = weather[month]['max'] >= highlight['max'] %}
{% if hl %}<b>{% endif %}
{{ weather[month]['max'] }}
{% if hl %}</b>{% endif %}
答案 0 :(得分:2)
if
出现两次,因为开始和结束的粗体标签都是有条件的 - 文字显示为任何一种方式,只是它是否为粗体随highlight['max']
的值而变化。您已经展示的代码的替代方法是:
{% if weather[month]['max'] >= highlight['max'] %}
<b>{{ weather[month]['max'] }}</b>
{% else %}
{{ weather[month]['max'] }}
{% endif %}
对于新手读者来说可能更清楚,但意味着重复{{ weather[month]['max'] }}
部分。
答案 1 :(得分:1)
第一个是打印开始标签,第二个是放置关闭标签 并且值始终打印。
结论只有当这个if为真时,值才是粗体,否则值不会变为粗体。
{% set hl = weather[month]['max'] >= highlight['max'] %}
{% if hl %} // <= Opening tag if the condition is true
<b>
{% endif %}
{{ weather[month]['max'] }} // <= Value
{% if hl %} // <= Closing tag if the condition is true
</b>
{% endif %}
<强>说明:强> 如果温度高于高亮[&#39; max&#39;]中定义的最高温度,则用粗体标记。