aeus-admin/README.md

68 lines
1.8 KiB
Markdown

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