我如何在 canJS 中使用变量?

How do I use variables in canJS?

这是我尝试使用的代码。 在我的 JS 文件中,我有: $count = 0

在我的 HTML 中,我正在尝试:

{{#if categories}}
<div id="categories">
  {{#each categories}}
  {{count = count + 1}}
  <div class="category" url="{{url}}">
    <div class="category-icon"></div>
    <div class="category-name">{{name}}</div>
    <span class="category-info"></span>
  </div>
  {{#if !(count%3)}}
  <br/>
 {{/if}}
  {{/each}}
</div>
{{/if}}

我希望在我显示的每三个类别之后有一个新行 - 有没有办法用 canJS 做到这一点?

您可以添加一个简单的助手 everyThird 并使用 stache 引擎提供的 @index 助手。 Demo.

helpers: {
    everyThird: function(val) {
        return val && val%3 === 0;
    }
}

内部模板

  <ul>
  {{#each categories}}
    {{#if everyThird(@index)}}
     <li><hr></li>
    {{/if}}
    <li>{{name}}</li>    
  {{/each}}
  </ul>