MeteorJS 模板占位符
MeteorJS template placeholder
我正在开始使用 MeteorJS/Iron Router/Blaze,我正在尝试弄清楚如何为模板设置占位符。
我有一个菜单和一个页脚,它们只会部分改变,但它们之间是主要内容,应该基于当前路线。重点是我需要某种指针,比如 angular "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模板的理解有问题,我只是根据angular模板来解决这个问题。
不确定我是否收到你的问题,但这里有一个答案:
您可以使用 {{> yield}}
标签来做到这一点。它将定义一个 动态区域,显示与当前路线对应的视图 。
您还可以 "design" 整个应用的布局,就像您所做的那样,例如 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 允许您使用路由 "names" 因此如果您更改 URL.
它不会做任何事情
我建议你读一本很棒的书,叫做 Discover Meteor !
我正在开始使用 MeteorJS/Iron Router/Blaze,我正在尝试弄清楚如何为模板设置占位符。
我有一个菜单和一个页脚,它们只会部分改变,但它们之间是主要内容,应该基于当前路线。重点是我需要某种指针,比如 angular "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模板的理解有问题,我只是根据angular模板来解决这个问题。
不确定我是否收到你的问题,但这里有一个答案:
您可以使用 {{> yield}}
标签来做到这一点。它将定义一个 动态区域,显示与当前路线对应的视图 。
您还可以 "design" 整个应用的布局,就像您所做的那样,例如 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 允许您使用路由 "names" 因此如果您更改 URL.
我建议你读一本很棒的书,叫做 Discover Meteor !