把手,空白控制

Qua*_*Van 24 whitespace space comma handlebars.js

我想要精确控制空白,但仍然有可读的模板.

只是想通过简单的用例来看看其他人的解决方案.

{{name}}
{{#if age}}
  , {{age}}
{{/if}}

# outputs {{name}} , {{age}}
# desire: {{name}}, {{age}}
Run Code Online (Sandbox Code Playgroud)

https://github.com/wycats/handlebars.js/issues/479 - 提交了一张已关闭的门票.

Bri*_*ian 40

根据pull请求添加此功能的历史记录,看起来这是正确的语法:

<h4>
{{~#object~}}

Surrounding whitespace would be removed.

{{/object}}
</h4>
Run Code Online (Sandbox Code Playgroud)

结果:

<h4>Surrounding whitespace would be removed.</h4>
Run Code Online (Sandbox Code Playgroud)

还有这种语法只修剪前导空格:

<h4>
{{~#object}}

Only leading whitespace would be removed.

{{/object}}
</h4>
Run Code Online (Sandbox Code Playgroud)

结果:

<h4>Only leading whitespace would be removed.
</h4>
Run Code Online (Sandbox Code Playgroud)

  • 作为一个注释,如果你想在循环结构上删除所有空格(比如#each),你可能还需要在结束标记上添加波浪号:`{{〜#each collection~}} {{〜/ each~}} ` (7认同)

Ste*_*fan 6

只是对Brian answer的评论,如果您想修剪空格并且不希望把手同时转义您的表达式,则要使用的正确语法是:

{{~{EXPRESSION}~}}
Run Code Online (Sandbox Code Playgroud)

(在不转义的情况下修剪表达式前后的空格)