在 meteor 中设置一个 class with helpers

Set a class with helpers in meteor

我正在用 meteor 做一个 webapp,我想在 li 元素中应用一个 class active,如果它的值等于一个名为 ('month' 的 Session 变量中的变量)

<template name="Navbar">    
  <ul class="nav navbar-nav">
    <li class="{{active}}"><a href="#myPage">Janvier</a></li>
    <li class="{{active}}"><a href="#">Février</a></li>
    <li class="{{active}}"><a href="#">Mars</a></li>
    <li class="{{active}}"><a href="#">Avril</a></li>
    <li class="{{active}}"><a href="#">Mai</a></li>
    <li class="{{active}}"><a href="#">Juin</a></li>
    <li class="{{active}}"><a href="#">Juillet</a></li>
    <li class="{{active}}"><a href="#">Août</a></li>
    <li class="{{active}}"><a href="#">Septembre</a></li>
    <li class="{{active}}"><a href="#">Octobre</a></li>
    <li class="{{active}}"><a href="#">Novembre</a></li>
    <li class="{{active}}"><a href="#">Décembre</a></li>
  </ul>
</template>

我的变量 session 给了我一个月的时间,如果 innerHtml 等于 session 变量,我希望有一个助手将 class "active" 放入它。我不知道如何检索 "this" innerHtml.

的值

Template.Navbar.helpers({
  active: function() {
    if(Session.get("month") === this.value) {
      return "active";
      }
  }
});

谢谢你的帮助。

约安

您可以将一个变量传递给您的助手 class 并与您的 Session 变量进行比较。

<template name="Navbar">    
  <ul class="nav navbar-nav">
    <li class="{{active 'Janvier'}}"><a href="#myPage">Janvier</a></li>
     ...
  </ul>
</template>

在您的模板中,您可以使用变量。

Template.Navbar.helpers({
      active: function(month) {
        if(Session.get("month") === month) {
          return "active";
          }
      }
    });