# 菜单相关

页面路由及视图都是由菜单列表配置,如下图:

# 配置目录

必须 作为菜单和权限的上级节点。

# 配置菜单

可配置跳转,与 vue-router 的配置一致,包含路由缓存(keepAlive)、组件路径(component)、访问路径(path)等等。该配置的路由注册在 / 子路由中。

# 配置权限

添加接口的访问权限,否则出现 403。权限如何控制?传送门

TIP

权限列表数据是由扫描 src/service 下的文件和模块 service 的导出合并而来的。

可以在页面中打印 $service 查看权限:

created() {
    console.log(this.$service)
}

每个 service 中都包含 permission

继承 BaseService 默认有基本的 6 个权限,自定义的则需要加 @Permission 装饰器:

import { BaseService, Service, Permission } from "cl-admin";

@Service("sys/user")
class User extends BaseService {
	@Permission("start")
	start(data) {
		return this.request({
			url: "/start",
			method: "POST",
			data
		});
	}
}

export default User;

# 隐藏菜单

如果你想在菜单列表中隐藏某个菜单且这个菜单还能通过路由访问到,有两种方式:

  • 是否显示 关闭

  • src/router/index.js 中配置默认路由