我想显示一个随机数组的整数及其相应的总和。
问题:结果不一致。
我的方法:
Template.registerHelper('randomNumbers', function () {
var list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
var resultLength = _.random(1, list.length);
var result = _.sample(_.shuffle(list), resultLength);
return {
result: result,
total: _.sum(result)
};
});
HTML模板:
<template name="displayResults">
<tbody>
<tr>
{{randomNumbers.result}}
</tr>
<tr>
total: {{randomNumbers.total}}
</tr>
</tbody>
</template>
在我看来,对于“总计”的计算,结果的功能是单独调用的。 如何让“结果”和“总数”同步?
提前致谢! VIN
答案 0 :(得分:1)
您的模板存在的问题是,您需要2次调用帮助程序,并且由于随机,它将提供2对(结果,总计)。
通过使用{{#with}}
块帮助程序,您只需显式调用一次帮助程序,并显示一对有效的对象。
<template name="displayResults">
<tbody>
{{#with randomNumbers}}
<tr>{{result}}</tr>
<tr>total: {{total}}</tr>
{{/with}}
</tbody>
</template>