【发布时间】:2014-04-23 02:09:36
【问题描述】:
我有一个handlebars 辅助函数,它接收一个数值并需要将一组与该值关联的类返回到div 块或我的html 中的完整语句:
例如下面是sn-p:
Handlebars.registerHelper('text', function(num) {
switch(num.toString()){
case "3":
return "three double dice";
break;
辅助函数有效。轻微问题。当它将它附加到我的 DOM 中的 div 时,由于某种原因,只有第一个单词作为我的类属性出现。即
HTML(DOM): <div class="two" double dice>
或者如果我重新安排我的退货声明:
HTML(DOM): <div class="double" two dice>
我试图返回整个 div 行。即
return '<div class="two double dice">'
以及在我的辅助函数中声明变量:
return "<div class="+ numClass + doubleClass + diceClass + ">"
甚至作为车把safeString:
return new Handlebars.SafeString("<div class="+ numClass + doubleClass + diceClass + ">");
请有人告诉我使用车把辅助函数返回多个类的正确方法是什么?赞赏。
更新(14 年 3 月 18 日):
包含模板。因此,这取决于您使用上面的辅助函数的哪个版本。
<template name="threeDice">
<div class={{text Roll.dice1}}>
*Content*
</div>
</template>
或
<template name="threeDice">
{{text Roll.dice1}}
*Content*
</div>
</template>
甚至:
<template name="threeDice">
<div class= {{text Roll.dice1}} "double dice">
*Content*
</div>
</template>
如果我将辅助函数更改为仅返回“数字”字符串。
【问题讨论】:
-
你如何从 html 调用助手?
-
确实 - 您确实需要发布 html 模板代码才能进行诊断。
-
@Firo @richsilv。更新为包含模板。
标签: meteor return handlebars.js