MeteorJS模板占位符

时间:2015-03-09 08:54:29

标签: javascript meteor template-engine

我开始使用MeteorJS / Iron Router / Blaze,我正在试图弄清楚如何为模板设置占位符。

我有一个菜单和一个页脚,它只会部分更改,但它们之间是主要内容,应该基于当前路线。重点是我需要某种指针,比如角度“ng-view”。

例如

<menu></menu>
{{some sort of placeholder}}
<footer></footer>

并在路由器中:

Router.route('/', function () {

//render some template exactly into placeholder, dont append it to the bottom

});

我对meteorjs模板的理解可能有问题,我只是根据角度模板来解决这个问题。

1 个答案:

答案 0 :(得分:0)

我不确定我的问题,但这是一个答案:

您可以使用{{> yield}}标记执行此操作。它将定义一个动态区域,该区域将显示与当前路径相对应的视图

您也可以像设置一样为整个应用设计“设计”布局,例如layout.html

<template name="layout">
  <div class="container">
  <header class="navbar">
    <div class="navbar-inner">
      <a class="brand" href="{{pathFor 'home'}}">My app</a>
    </div>
  </header>
  <div id="main" class="row-fluid">
    {{> yield}}
  </div>
  </div>
</template>

告诉Iron-Router你的应用必须适合这种布局:

Router.configure({
  layoutTemplate: 'layout'
});

    // Then just define your routes

Router.map(function() {
  this.route('home', {path: '/'});
});

您可能会注意到我在布局中使用了{{pathFor 'home'}}。 Iron Router允许您使用路由“名称”,因此如果您更改URL,它将不会执行任何操作。

我建议你阅读一本名为Discover Meteor的好书!