链接到把手的反应数据帮助设置css类

时间:2013-10-14 04:19:13

标签: meteor

我有一个看起来像这样的对象:

{
  item1:0, 
  item2:1,
  item3:-1
}

我想使用该对象中的值来控制DOM中某些对象的颜色。所以我希望这是反应性的,这样如果数据发生变化,对象的颜色也会发生变化。

我不确定最有效的方法是什么。我目前定义了一个把手助手,它将给定的值映射到必要的css类。但是,它不是反应性的。我可以将地图放入会话中。

Session.set('data_map',map); 

但是,在我的模板中,这会导致问题。以下产量和错误。

<button class="btn {{colorHelper Session.get('item1')}}"> 

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

您还需要在模板上设置帮助程序:

Template.yourtemplatename.colorHelper = function() {
    return Session.get("data_map");
}

然后你的HTML

<template name="yourtemplatename">
    ...

    <button class="btn {{colorHelper.item1}}">

    ...
</template>

您可以将data_map会话变量设置为与您一样的对象&amp;使用此点表示法访问内部的内容,或者您​​可以将其变量设置为字符串并仅使用{{colorHelper}}

直接访问它