meteor中多页面的处理

来源:互联网 发布:win10软件显示不全 编辑:程序博客网 时间:2024/06/16 06:36

1.使用 iron-router,创建一个布局模板,然后将其他模板使用{{> yield}}注入到其中。(可以通过查看iron-router的文档了解布局模板)。(可以在atmosphere中查找相关内容)

2.使用{{> Template.dynamic}}。

eg:

<body>
  <ul>
    <li><a href="#" class="index">Home</li>
    <li><a href="#" class="about">About</li>
    <li><a href="#" class="contact">Contact</li>
  </ul>
  {{> Template.dynamic template=template_name }}
</body>
其中template_name可以使用template helper来改变

Meteor.startup(function () {
  Session.setDefault("templateName", "index")
});

Template.body.helpers({
  template_name: function(){
    return Session.get("templateName")
  }
});

Template.body.events({
  "click .home": function() {
    Session.set("templateName", "index");
  },
  "click .about": function() {
     Session.set("templateName", "about");
  }
  // ..
});

如果session返回的是"about",{{> Template.dynamic template="about"}} 就相当于{{> about}}.

1 0