最近在写vue项目中遇到的一个问题,直接封装成一个方法。下面附上代码。
rolesAssign(){
let role =this.$store.getters.loginUser.role
let array = [{number:1,user:"Dealer"},{number:2,user:"Warehouse"},{number:4,user:"Fund"},{number:16,user:"Guarantee"},{number:32,user:"Repurchase"},{number:64,user:"Group"},{number:128,user:"Platform"},{number:256,user:"IsAdmin"}]
array.sort(function(a,b){
return b.number - a.number
})
let rolelist = []
for(let i=0;i<array.length;i++){
if(role>=array[i].number){
rolelist.push(array[i].number)
role = role - (array[i].number)
}
}
return rolelist
}
直接放代码。可以实践下。