基于Vue框架细粒度权限的方法、设备以及存储介质技术

技术编号:32456845 阅读:30 留言:0更新日期:2022-02-26 08:36
本发明专利技术公开了一种基于Vue框架细粒度权限的方法,包括:基于访问接口,获取系统的全部页面按钮;根据所述全部页面按钮,获取包含用户页面按钮的数组;将所述数组存储到vuex;根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮。本发明专利技术的技术方案,结合Ram用户体系与细粒度权限实现整个系统权限的划分,通过全局的过滤算法和全局的自定义指令以及vuex的存储仓库,使得系统根据登录系统的用户的权限来动态显示页面的内容以及操作权限,实现细粒度权限,极大地减少了对每一个页面的逻辑书写的计算量,从而提升用户体验和系统的运行速度。运行速度。运行速度。

【技术实现步骤摘要】
基于Vue框架细粒度权限的方法、设备以及存储介质


[0001]本专利技术属于动态权限
,尤其涉及一种基于Vue框架细粒度权限的方法、设备以及存储介质。

技术介绍

[0002]随着信息时代的到来,对系统的安全性要求越来越高,各个用户登录系统所拥有的权限不同,对应页面以及页面的按钮权限也不相同,有的页面按钮根据登录者的权限需要置灰,隐藏等等。
[0003]但是,现有的细粒度权限需要单个页面访问接口获取当前页面中所有按钮的权限,或者说是通过一个接口获取页面中所有按钮的权限然后分别对应各个页面处理,导致权限问题处理复杂。

技术实现思路

[0004]本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一种可以实现对用户在整个系统的权限进行统一划分的基于Vue框架细粒度权限的方法、设备以及存储介质。
[0005]为了解决上述技术问题,本专利技术的实施例提供如下技术方案:
[0006]一种基于Vue框架细粒度权限的方法,包括:
[0007]基于访问接口,获取系统的全部页面按钮;
[0008]根据所述全部页面按钮,获取包含用户页面按钮的数组;
[0009]将所述数组存储到vuex;
[0010]根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮。
[0011]可选的,根据所述全部页面按钮,获取包含用户页面按钮的数组,包括:
[0012]通过过滤算法对所述全部页面按钮进行过滤,获取用户页面按钮;
[0013]将所述用户页面按钮放到一个数组。
[0014]可选的,根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮,包括:
[0015]注册消失隐藏指令,生成全局消失隐藏按钮;
[0016]注册置灰指令,生成全局置灰按钮。
[0017]可选的,所述注册消失隐藏指令,生成全局消失隐藏按钮,包括:
[0018]获取存储在所述vuex的数组;
[0019]判断所述页面按钮是否存在于所述数组中;
[0020]若否,则对所述页面按钮注册消失隐藏指令,生成全局消失隐藏按钮。
[0021]可选的,所述注册置灰指令,生成全局置灰按钮,包括:
[0022]获取存储在所述vuex的数组;
[0023]判断所述页面按钮是否存在于所述数组中;
[0024]若否,则对所述页面按钮注册置灰指令,生成全局置灰按钮;其中,用户可以拷贝所述置灰按钮对应的文字。
[0025]可选的,根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮后,还包括:对表格操作列进行隐藏判断。
[0026]可选的,所述对表格操作列进行隐藏判断,包括:
[0027]当用户对于一列所述页面按钮的所述页面按钮均为无权限;
[0028]则对所述一列的计算属性进行判断,获取判断结果;
[0029]根据所述判断结果,在所述系统的页面隐藏或者显示所述一列所述页面按钮。
[0030]可选的,所述则对所述一列的计算属性进行判断,获取判断结果,包括:
[0031]获取存储在所述vuex的数组;
[0032]判断所述一列所述页面按钮是否存在于所述数组中;
[0033]若是,则所述系统的页面显示所述一列所述页面按钮;
[0034]若否,则所述系统的页面隐藏所述一列所述页面按钮。
[0035]本专利技术的实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的方法。
[0036]本专利技术的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
[0037]本专利技术的实施例,具有如下技术效果:
[0038]本专利技术的上述技术方案,结合Ram用户体系与细粒度权限实现整个系统权限的划分,通过全局的过滤算法和全局的自定义指令以及vuex的存储仓库,使得系统根据登录系统的用户的权限来动态显示页面的内容以及操作权限,实现细粒度权限,极大地减少了对每一个页面的逻辑书写的计算量,从而提升用户体验和系统的运行速度。
[0039]本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。
附图说明
[0040]图1是本专利技术实施例提供的基于Vue框架细粒度权限的方法的流程示意图;
[0041]图2是本专利技术实施例提供的基于Vue框架细粒度权限的方法的一个实施例。
具体实施方式
[0042]下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。
[0043]本专利技术提到的,Ram(Random Access Memory),随机存取存储器。Vue是一套用于构建用户界面的渐进式JavaScript(开发语言)框架;Vuex:应用程序开发的状态管理模式;自定义指令:纯DOM元素进行底层操作;其中,DOM(Document Object Model)是一套网络标准;BeforeEach:全局路由守卫,可以监控路由的变化;过滤算法:通过后台返回的权限树过滤掉所需要的用户权限;indexOf:一种函数,报告指定字符在此实例中的第一个匹配项的索
引;搜索从指定字符位置开始,并检查指定数量的字符位置;Css:界面的样式层;display属性规定元素应该生成的框的类型。
[0044]如图1所示,本专利技术的实施例提供一种基于Vue框架细粒度权限的方法,包括:
[0045]步骤S1:基于访问接口,获取系统的全部页面按钮;
[0046]具体的,用户登录系统后,在Vue全局钩子守卫BeforeEach中访问接口,获取整个系统的全部页面按钮;
[0047]定义一个随机变量,第一次访问接口,获取整个系统的全部页面按钮之后,把这个随机变量的值赋为2,条件判断只有随机变量的值是1的时候才能访问接口,因为全局钩子守卫切换路由就会触发,但是,本专利技术的实施例只需获取全部页面按钮一次即可,也即每次用户在登陆系统后,无论浏览多少个页面,只需获取一次全部页面按钮。
[0048]步骤S2:根据所述全部页面按钮,获取包含用户页面按钮的数组;
[0049]步骤S3:将所述数组存储到vuex;
[0050]步骤S4:根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮。
[0051]本专利技术的该实施例,结合Ram用户体系与细粒度权限实现整个系统权限的划分,通过全局的过滤算法和全局的自定义指令以及vuex的存储仓库,使得系统根据登录系统的用户的权限来动态显示页面的内容以及操作权限,实现细粒度权限,极大地减少了对每一个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Vue框架细粒度权限的方法,其特征在于,包括:基于访问接口,获取系统的全部页面按钮;根据所述全部页面按钮,获取包含用户页面按钮的数组;将所述数组存储到vuex;根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮。2.根据权利要求1所述的方法,其特征在于,根据所述全部页面按钮,获取包含用户页面按钮的数组,包括:通过过滤算法对所述全部页面按钮进行过滤,获取用户页面按钮;将所述用户页面按钮放到一个数组。3.根据权利要求2所述的方法,其特征在于,根据所述数组对所述全部页面按钮注册自定义指令,生成全局页面按钮,包括:注册消失隐藏指令,生成全局消失隐藏按钮;注册置灰指令,生成全局置灰按钮。4.根据权利要求3所述的方法,其特征在于,所述注册消失隐藏指令,生成全局消失隐藏按钮,包括:获取存储在所述vuex的数组;判断所述页面按钮是否存在于所述数组中;若否,则对所述页面按钮注册消失隐藏指令,生成全局消失隐藏按钮。5.根据权利要求3所述的方法,其特征在于,所述注册置灰指令,生成全局置灰按钮,包括:获取存储在所述vuex的数组;判断所述页面按钮是否存在于所述数组中;若否,则对所述页面按钮注册置灰指令,生成全局置灰按钮...

【专利技术属性】
技术研发人员:岳增旭张大朋石伟
申请(专利权)人:中科曙光信息产业成都有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1