流星助手返回一个可用的类

时间:2015-01-03 23:52:56

标签: meteor meteor-helper

流星noob在这里,试图获得模板的悬念。所以我在JS中有这个集合:

Session.set('activeSection', 'start');

Template.sectionContainer.helpers = ({
    "isActive": function() {
        return (Session.get("activeSection") === 'start') ? "active" : "nope";
    }
});

然后:

<template name="sectionContainer">
    <section class="{{isActive}}"></section>
</template>

但是,我没有像我期望的那样获得现役/不上课。 sectionContainer嵌套在另一个模板中,如果它具有任何重要性。我觉得我在这里错过了一些非常简单的事情,我做错了什么?

使用不推荐的语法可以正常工作:

Template.sectionContainer.isActive = function() {
    return (Session.get("activeSection") === 'start') ? "active" : "nope";
}

即使从控制台运行Template.sectionContainer.helpers.isActive()也会返回正确的值。

2 个答案:

答案 0 :(得分:1)

您应该像以下一样使用它:

Template.sectionContainer.helpers({
    isActive: function() {
        return Session.equals("activeSection", "start") ? "active" : "nope";
    }
});

答案 1 :(得分:1)

如果有效:

Template.sectionContainer.isActive = function() {
   return (Session.get("activeSection") === 'start') ? "active" : "nope";
}

然后在新语法中它将是:

Template.sectionContainer.helpers({
    isActive: function() {
        return (Session.get("activeSection") === 'start') ? "active" : "nope";
    }
});