我有一个使用铁路由器导航的流星应用程序。我有一个在每个页面上呈现的布局文件。尽管有一个页面我不希望显示/渲染布局文件。我敢打赌,有一种实现此目标的优雅方法,但不幸的是我还没有找到。
Router.configure({
layoutTemplate: 'layout',
loadingTemplate: 'loading',
notFoundTemplate: 'notapage'
});
Router.route('dataNotFound', function() {
this.render('notapage');
});
Router.route('test/qwerty', function() {
this.render('abc');
}, {
name: 'abc',
waitOn: function() {
return [
Meteor.subscribe('testSubscription')
];
}
});
布局文件:
<template name="layout">
<nav class="navbar navbar-default navbar-fixed-top">
...
</nav>
<div class="clearfix"></div>
<div class="page-container">
{{>yield}}
</div>
<div class="page-footer">
...
</div>
如果路由等于abc,我不希望显示/显示layout.html文件。
答案 0 :(得分:1)
您可以在单个Route定义上覆盖默认布局文件,请参见:http://iron-meteor.github.io/iron-router/#layouts
Router.route('/post/:_id', function () {
this.layout('ApplicationLayout');
});
文档还描述了如何将模板渲染到同一布局模板中的不同产量区域。