Javascript METEOR:如何使用会话操纵类?

Javascript METEOR:如何使用会话操纵类?,javascript,meteor,Javascript,Meteor,我正在学习流星课程 当用户单击“全部”时,将按如下方式返回: <div class="ui secondary pointing menu"> <a id="all" class="item active">All</a> <a id="fiction" class="item">Fiction</a> <a id="nonfiction" class="item">Non Fiction</a> &

我正在学习流星课程

当用户单击“全部”时,将按如下方式返回:

<div class="ui secondary pointing menu">
  <a id="all" class="item active">All</a>
  <a id="fiction" class="item">Fiction</a>
  <a id="nonfiction" class="item">Non Fiction</a>
</div>
<div class="ui secondary pointing menu">
  <a id="all" class="item">All</a>
  <a id="fiction" class="item active">Fiction</a>
  <a id="nonfiction" class="item">Non Fiction</a>
</div>
<div class="ui secondary pointing menu">
  <a id="all" class="item">All</a>
  <a id="fiction" class="item">Fiction</a>
  <a id="nonfiction" class="item active">Non Fiction</a>
</div>
但它不起作用。如果有人纠正我的错误,我会很高兴的


谢谢。

我看到了许多错误,因此这里有一个简单的工作示例,您可以看到您在哪里犯了错误

模板调用helper函数并给它一个参数,在这种情况下,我们要检查的选项卡是活动的

<template name="bookList">
  <div class="ui secondary pointing menu">
    <a id="all" class="item {{selectedTab "all"}}">All</a>
    <a id="fiction" class="item {{selectedTab "fiction"}}">Fiction</a>
    <a id="nonfiction" class="item {{selectedTab "nonfiction"}}">Non Fiction</a>
  </div>
</template>
事件只是更改会话值,它将在模板中进行相应的更改

Template.chapterList.events({
  'click #all': function () {
    Session.set('activeTab', 'all');
  },
  'click #fiction': function () {
   Session.set('activeTab', 'fiction');
  },
  'click #nonfiction': function () {
   Session.set('activeTab', 'nonfiction');
  },
});

下面是一个演示应用程序示例:

您没有返回
会话。get()
数据。您只需使用您需要执行的
返回Session.get('tabAll')等。。。我将发布一个快速的例子,作为回答返回会话在事件中不起作用
<template name="bookList">
  <div class="ui secondary pointing menu">
    <a id="all" class="item {{selectedTab "all"}}">All</a>
    <a id="fiction" class="item {{selectedTab "fiction"}}">Fiction</a>
    <a id="nonfiction" class="item {{selectedTab "nonfiction"}}">Non Fiction</a>
  </div>
</template>
Template.bookList.helpers({
  selectedTab: function(tab) {
    var activeTab = Session.get('activeTab');
    if (activeTab === tab) {
      return 'active';
    }
  }
});
Template.chapterList.events({
  'click #all': function () {
    Session.set('activeTab', 'all');
  },
  'click #fiction': function () {
   Session.set('activeTab', 'fiction');
  },
  'click #nonfiction': function () {
   Session.set('activeTab', 'nonfiction');
  },
});