从下划线模板到胡须.js
from underscore template to mustache.js
我想从underscore template
更改为mustache.js
。
由于在小胡子中.js没有if statements
如何更改这段代码才能使用mustache.js
?
<% if (done) { %>
<span class="todo-clear">
<a href="#">
Clear <span class="number-done"><%= done %></span>
completed <span class="word-done"><%= done === 1 ? 'item' : 'items' %></span>
</a>
</span>
<% } %>
我的解决方案是:
{{#total}}
<span class="todo-count">{{ total }}
<span class="number">{{ remaining }}</span>
<span class="word"><%= remaining == 1 ? 'item' : 'items' %></span> left.-->
</span>
<span class="hint">
Drag tasks from one list into another and vice versa.
</span>
{{/total}}
它适用于总变量,因为它可能是 0 或更大,但我不知道在剩余变量(可能是 1 或更多)上修复它的最佳方法是什么。
<span class="word"><%= remaining == 1 ? 'item' : 'items' %></span> left.</span>
它应该是这样的:
<span class="word">
{{#remaining}} 'items' {{/remaining}}
{{^remaining}} 'item' {{/remaining}}
</span>
它不起作用,因为剩余可能是 1 个或更多。
在你看来,你可以做这样的东西:
Mustache.render(yourTemplate, {
remaining: items.length > 1 ? true : false
}
如果您刚刚迁移到新的模板框架,我建议您使用车把.js。这支持 if 语句,如下所示:
{{#if total}}
<span>something</span>
{{else}}
<span>something else</span>
{{/if}}
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 如何从Java/scala调用js美化程序
- 如何更改<svg>标记为<img>用js标记
- 如何使用 node.js 比较两个 json 数组
- 使用胡须.js一次循环访问一个测验项目
- 从下划线模板到胡须.js
- 如何使用胡须.js在由 Jekyll 和 Liquid Layouts 一起生成的网站内部
- 跨域或 CDN 加载胡须.js/车把.js模板的最佳做法