我正在尝试使用流星会话制作一个反应式菜单(以保持用户的视图)..但它不起作用,Session.get('currentView')被更改(在chrome控制台中测试),但页面不要再次渲染。
.html
<div class="col-1-1 menu" style="height: 42px;">
<ul>
<li><a class="dashButton" href="#"># Dashboard</a></li>
<li><a class="myJobsButton"href="#">Jobs</a></li>
<li><a class="helpPageButton"href="#">Help</a></li>
</ul>
<br style="clear:left"/>
</div>
{{#if currentViewIs "dashboard"}}
{{> dashboard}}
{{else}}
{{#if currentViewIs "myJobs"}}
{{> myJobs}}
{{else}}
{{#if currentViewIs "helpPage"}}
{{> helpPage}}
{{else}}
{{> dashboard}}
{{/if}}
{{/if}}
{{/if}}
客户端.js
Template.userPage.currentViewIs = function (view) {
if( Session.get('currentView') == view)
return true;
return false;
};
Template.userPage.events({
'click .dashButton': function (evt) {
Session.set('currentView', 'dashboard');
},
'click .myJobsButton': function (evt) {
Session.set('currentView', 'myJobs');
},
'click .helpPageButton': function (evt) {
Session.set('currentView', 'helpPage');
}
});