Meteor 0.8.0:构建应用程序时:意外关闭模板标记

时间:2014-03-28 15:20:13

标签: javascript html templates web meteor

我的模板中有此部分,意外的结束模板标记为{{/ if}}。

{{#if selected}}
  <div class="Answer--selected">
{{else}}
  <div class="Answer">
{{/if}}
    <i class="fa"></i> {{title}}
  </div>

此代码有什么问题?

3 个答案:

答案 0 :(得分:7)

我在Meteor Devshop回答了我的问题。 Meteor 0.8.0中的一个重大变化是名为Blaze的新模板系统,它以一种全新的方式呈现模板。 Blaze不是每次模板渲染时重新生成整个HTML片段,而是仅查找需要更新的DOM节点并执行尽可能少的更改。这意味着您不再允许在块帮助程序内部使用未关闭的HTML标记。

所以修正后的代码如下:

{{#if selected}}
  <div class="Answer--selected">
    <i class="fa"></i> {{title}}
  </div>
{{else}}
  <div class="Answer">
    <i class="fa"></i> {{title}}
  </div>
{{/if}}

HTH

答案 1 :(得分:6)

我相信如果您只是想根据条件更改类名,这也会有效。

<div class="{{#if selected}}Answer--selected{{else}}Answer{{/if}}">
    <i class="fa"></i> {{title}}
</div>

只要你没有与你的助手分开标签开始/结束,你应该没问题。

史蒂夫

答案 2 :(得分:0)

Meteor 0.8.0有一个完全重写的模板引擎。叫Blaze。

查看文档http://docs.meteor.com,特别是关于使用blaze的wiki页面。 https://github.com/meteor/meteor/wiki/Using-Blaze