Requirejs Handlebar插件空行

时间:2013-06-22 09:52:11

标签: javascript requirejs handlebars.js

我不知道这是否特定于requirejs handlebar插件,但是当我有一个模板时:

<h1>abc</h1>
{{#if testcondition1}}
<h1>def</h1>
{{/if}}
{{#if testcondition2}}
<h1>ghi</h1>
{{/if}}
<h1>xyz</h1>

如果一个条件为假,我会得到一个空行。 所以喜欢:

<h1>abc</h1>

<h1>ghi</h1>
<h1>xyz</h1>

而不是

<h1>abc</h1>
<h1>ghi</h1>
<h1>xyz</h1>

这是预期的行为吗? 在模板编译之后,我不想重复使用字符串操作。我知道在html中会忽略这些行,但这在循环中尤其令人讨厌。

1 个答案:

答案 0 :(得分:1)

如果您查看代码中的换行符展示位置:

<h1>abc</h1>\n
{{#if testcondition1}}\n
<h1>def</h1>\n
{{/if}}\n
{{#if testcondition2}}\n
<h1>ghi</h1>\n
{{/if}}\n
<h1>xyz</h1>\n

您可以看到,如果第一个条件为false,则没有跳过分支的代码为:

<h1>abc</h1>\n
\n
{{#if testcondition2}}\n
<h1>ghi</h1>\n
{{/if}}\n
<h1>xyz</h1>\n

连续给你两个换行符。