【发布时间】:2015-02-16 12:37:00
【问题描述】:
我有以下问题: 在带有把手的布局中渲染视图时,引擎会在渲染的视图主体之前添加一个额外的文本节点
<nav></nav>
{{{body}}}
<footer></footer>
结果
<nav></nav>
"
[empty text node here]
"
<rendered view>
<footer></footer>
那个空文本节点有它自己的高度,并且会破坏我的 CSS 边距和填充。请注意,如果我将视图 HTML 直接放在布局中而不使用把手模板,则没有文本节点,一切都很好。
任何想法为什么会发生这种情况以及如何解决它?
【问题讨论】:
-
如果你尝试 {{{~ body}}} ?这应该删除波浪号一侧的空格
-
这是一个有效的语法吗?
-
它在车把文档中。
http://handlebarsjs.com/expressions.html。Whitespace Control Template whitespace may be omitted from either side of any mustache statement by adding a ~ character by the braces. -
谢谢,但在解析 HTML 而不是纯文本
Express started on http://localhost:1337. Press CTRL+C to terminate... Error: Parse error on line 96: ... </nav> {{{~body}}} <foote ---------------------^ Expecting 'ID', 'DATA', got 'INVALID'时,它看起来不是 express-handlebars 中的有效语法 -
在波浪号和“body”之间可能有一个空格。另见:github.com/emberjs/ember.js/issues/4305。它应该工作。您使用的是最新款车把吗?
标签: javascript html css node.js handlebars.js