做后台管理遇到一个问题,例如我们需要做菜单和按钮权限,假如我们前端路由是这么写的,我就简单写了:
const route = {
path:"article",
children:[{
path:"edit"
}]
}
意思是文章管理模块有一个编辑按钮,点击编辑按钮跳转到编辑页面,然后后端给我们的权限是这样的:
{
path:"article",
operate:[""]
}
意思是有文章管理页面,没有编辑权限。
那么这个时候我应该怎么根据后端返回的操作权限去diff掉前端的path:"edit"这个路由权限?
其实你这个 用动态路由做 好一些吧 。后端直接把 路由返给你包括 它的权限 。前端就不用 根据后端返回的 再 删除 route里的东西了 。
至于你说的 怎么diff 。你 获取到路由 数组 。然后 循环 对比 path相等 operate =[]的话 那就把 route里 对应的 path的 edit删除