在 mean.js 应用程序中,我想在用户登录和退出时在顶部导航栏中显示菜单项。菜单项在用户登录时显示,但是,在用户退出时不会发生。
将“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');
我查看的解决方案都建议将 isPublic 属性设置为 true,但围绕这个主题似乎有太多的困惑。谁有答案?
最佳答案
如果您查看 mean.js 的 core
模块中的 menus.client.services.js
,最后一行如下所示:this.addMenu( 'topbar');
.如果将其更改为 this.addMenu('topbar', true);
。当您未登录时,您将看到所有菜单项都显示在顶部栏上。然后您可以像在示例中一样添加菜单项,也可以不添加 true
,因为它将继承自刚刚更改:
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?');
OR
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?', true);
如果您现在希望在未登录时隐藏它,或者如下所示:
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?', false);
我希望这会有所帮助。
关于angularjs - mean.js 菜单 isPublic 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27093701/