1.8 KiB
1.8 KiB
权限配置
命名规则
模块命名
模块命名的话需要使用单个单词,不包含下划线,不用说驼峰命令
组件名称
- 顶层组件
组件名称应该和模块名称和菜单层级保持一致, 比如system
模块, 那么最顶级的组件名称应该为System
- 子组件
子组件应该在父组件基础上加上自己的名称, 比如System
模块下有一个User
组件, 那么组件名称应该为SystemUser
, 同时菜单也需要配置父组件为System
如果组件下面没有孙子组件, 那么视图为:
views/system/user/Index.vue
- 孙子组件
孙子组件应该在父组件的基础上加上自己的名称, 比如System
模块下有一个User
组件, 那么组件名称应该为SystemUser
, 同时自己的名称为Login
, 那么组件名称应该为SystemUserLogin
, 菜单的父组件为SystemUser
, 生成对应的视图文件路径为:
views/system/user/login/Index.vue
子模块处理
处理子表的情况, 比如有一个菜单表和权限表, 权限隶属于菜单表下面, 那么在试图页面处理权限的的时候可以如下处理:
- 菜单配置
这里需要手动指定下路由地址, 另外配置菜单为隐藏的菜单
func (m *AclRule) GetMenu() *types.Menu {
return &types.Menu{
Name: "SettingAclRule",
Parent: "Setting",
Label: "ACL规则",
Hidden: true,
Uri: "/setting/acl/rule/:acl",
}
}
- 界面配置
需要配置组件Viewer
的knownColumns
属性, 表示这个是已知的字段值, 表现为不会再界面显示, 添加和更新的时候自动赋值, 查询的时候自动赋值
<viewer :known-columns="knownColumns"></viewer>
onMounted(() => {
knownColumns.value['name'] = route.params['acl']
})