在coffeescript的流星模板帮手

时间:2013-10-10 09:45:12

标签: coffeescript meteor

在使用coffeescript时,我无法在模板助手中运行任何类型的计算(反应或其他),只返回常量值。

if Meteor.isClient
    Template.fg.helpers(
        f: () -> [{val:1},{val:4},{val:9}] # works.
        g: () -> [{val: i*i} for i in [1..10]] # doesn't work.
    )

和模板

<template name="fg">
  {{#each f}} 
    <div>f: {{val}}</div>
  {{/each}} 
  {{#each g}} 
    <div>g: {{val}}</div>
  {{/each}} 
</template>

产生

f: 1
f: 4
f: 9
g:

但它使用javascript工作正常。关于如何使g工作的任何建议?

2 个答案:

答案 0 :(得分:1)

我认为site可以提供帮助。

所以像这个网站提到做这样的事情:

g: () -> (val: i*i for i in [0...10])

但我可能错了,我对coffeescript或meteor并不熟悉。

答案 1 :(得分:0)

在您的功能g中进行以下更改,它将起作用

Template.fg.helpers
f: () -> [{val:1},{val:4},{val:9}] # works.


g: () -> 
    for i in [1..10] # this also works
        val: i*i

它将提供以下输出

f: 1
f: 4
f: 9
g: 1
g: 4
g: 9
g: 16
g: 25
g: 36
g: 49
g: 64
g: 81
g: 100

希望它能奏效:)