我正在查看meanjs,但无法设置可用于特定用户 Angular 色的菜单。 根据文档http://meanjs.org/docs.html#menus
roles(可选;默认值:['user'])- 一个数组,指示允许查看此菜单项的 Angular 色。
我有一个名为 tempstaff
的 Angular 色,我希望能够访问特定页面。
我已经尝试过以下方法
Menus.addMenuItem('topbar', 'Talks', 'talks', 'dropdown', '/talks(/create)?', true, ['tempstaff']);
阅读此问题已接受的答案后mean.js menu isPublic not working
我尝试修改我的 menus.client.services.js
文件,以便
this.addMenu('topbar');
成为了
this.addMenu('topbar',true, ['user']);
这适用于全局级别,因此如果我设置了用户,则可以让具有 user
Angular 色的用户查看所有页面,或者如果我将其更改为 tempstaff
那么 tempstaff
用户可以看到所有页面,但它不支持 Menus.addMenuItem
中的覆盖。
如何实现这一点,以便我可以将某些页面设置为可由某些 Angular 色访问,而将其他页面设置为由其他 Angular 色访问?
最佳答案
根据文档,
roles (Default: ['user']) - An array indicating the roles that are allowed to view this menu
因此,您应该将“user”和“tempstaff”包含为可以访问菜单的可能 Angular 色。将您的代码更改为以下内容应该可以工作。
this.addMenu('topbar', true, ['user', 'tempstaff']);
关于javascript - mean.js AngularJS 菜单服务为页面分配角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28317689/