使用 Iron Router 在 Meteor 中设置响应式布局
Set a reactive layout in Meteor with Iron Router
有没有办法在 meteor 中使用 iron router 设置反应式布局?
例如:
Router.configure({
loadingTemplate: 'loading',
layoutTemplate: Session.get('fullscreen') ? 'layoutFull' : 'layout'
});
然后在两种布局中使用 link:
<a href="" data-action="toggleFullscreen" class="b-button">Toggle Fullscreen</a>
然后在两种布局中都是这样的:
Template.layoutFull.events({
'click [data-action=toggleFullscreen]': function() {
Session.set('fullscreen', !Session.get('fullscreen'));
}
});
Template.layout.events({
'click [data-action=toggleFullscreen]': function() {
Session.set('fullscreen', !Session.get('fullscreen'));
}
});
我 运行 遇到的问题是 Router.configure
没有被动设置 layoutTemplate
。有没有办法做到这一点,从而影响所有路线?
它必须是一个反应函数:
layoutTemplate: function(){
return Session.get('fullscreen') ? 'layoutFull' : 'layout'
}
另外,为什么有两个函数?
你只需要一个,因为这是点击会话
的否定
有没有办法在 meteor 中使用 iron router 设置反应式布局?
例如:
Router.configure({
loadingTemplate: 'loading',
layoutTemplate: Session.get('fullscreen') ? 'layoutFull' : 'layout'
});
然后在两种布局中使用 link:
<a href="" data-action="toggleFullscreen" class="b-button">Toggle Fullscreen</a>
然后在两种布局中都是这样的:
Template.layoutFull.events({
'click [data-action=toggleFullscreen]': function() {
Session.set('fullscreen', !Session.get('fullscreen'));
}
});
Template.layout.events({
'click [data-action=toggleFullscreen]': function() {
Session.set('fullscreen', !Session.get('fullscreen'));
}
});
我 运行 遇到的问题是 Router.configure
没有被动设置 layoutTemplate
。有没有办法做到这一点,从而影响所有路线?
它必须是一个反应函数:
layoutTemplate: function(){
return Session.get('fullscreen') ? 'layoutFull' : 'layout'
}
另外,为什么有两个函数? 你只需要一个,因为这是点击会话
的否定