mean.js菜单是公共不工作
在mean.js应用程序中,我想在用户login和登出时在顶部导航栏中显示菜单项。 菜单项在用户login时显示,但是,用户登出时不会发生。
将“isPublic”属性设置为true的mean.js文档状态将允许在用户注销时在菜单栏上显示菜单项; 但是这不起作用。 这里是代码:
Menus.addMenuItem('topbar','Talks','talks','dropdown','/ talks(/ create)?',true); Menus.addSubMenuItem('topbar','talks','List Talks','talks'); Menus.addSubMenuItem('topbar','talks','New Talk','talks / create');
我所看到的解决scheme都build议将isPublic属性设置为true,但似乎对此主题有太多的困惑。 任何人有答案?
如果你在menus.client.services.js
的core
模块中查看menus.client.services.js,最后一行看起来像这样: this.addMenu('topbar');
。 如果您将其更改为this.addMenu('topbar', true);
。 当你没有login的时候,你会看到在顶栏上显示的所有菜单项。然后你可以像你的例子一样添加你的菜单项,或者没有true
菜单项,因为它会从刚才改变的设置inheritance它:
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?'); OR Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?', true);
或者像下面这样,如果你现在想在没有login的时候隐藏它:
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?', false);
我希望这有帮助。