对权限进行分组配置
后端会返回数组项,通过id可获取用户拥有权限
- string.indexOf(searchvalue,start)Number 查找指定字符串第一次出现的位置,如果没找到匹配的字符串则返回 -1。
- 获取数据,对多选框分组
<el-checkbox-group v-model="checkedMenuOptions" @change="handleCheckedChange">
<el-checkbox v-for="item in menuOptions" :label="item.index" :value="item.index" :key="item.id"
style="width: 120px">{{item.name}}
</el-checkbox>
</el-checkbox-group>
funCheckedGroup(checkedLisense){
this.checkedMenuOptions = [];
this.checkedVoiceOptions = [];
this.checkedMapOptions = [];
this.checkedmeetingOptions = [];
this.checkeddataOptions = [];
// index 0-5为 一级菜单 组array回填数据
for (var i = 0; i < checkedLisense.length; i++) {
if (1 <= checkedLisense[i].id && checkedLisense[i].id <= 6) {
this.checkedMenuOptions.push(checkedLisense[i].index);
} else if ([6, 7, 8, 9, 67, 68, 69, 71, 72].indexOf(checkedLisense[i].id) > -1) {
this.checkedVoiceOptions.push(checkedLisense[i].index);
}
else if ([10, 11, 12].indexOf(checkedLisense[i].id) > -1) {
this.checkedMapOptions.push(checkedLisense[i].index);
}
else if ([13, 14].indexOf(checkedLisense[i].id) > -1) {
this.checkedmeetingOptions.push(checkedLisense[i].index);
} else {
this.checkeddataOptions.push(checkedLisense[i].index);
}
}
this.showBox = true;
this.$nextTick(function () {
$('.el-checkbox__inner').css('display', 'block');
})
},
组下选项
//对checkbox进行分组
funCheckGroup(){
this.menuOptions = [];
this.voiceOptions = [];
this.mapOptions = [];
this.meetingOptions = [];
this.dataOptions = [];
// index 0-5为 一级菜单
for (var i = 0; i < this.totalCheckOptions.length; i++) {
if (1 <= this.totalCheckOptions[i].id && this.totalCheckOptions[i].id <= 6) {
this.menuOptions.push(this.totalCheckOptions[i]);
} else if ([6, 7, 8, 9, 67, 68, 69, 71, 72].indexOf(this.totalCheckOptions[i].id) > -1) {
this.voiceOptions.push(this.totalCheckOptions[i]);
}
else if ([10, 11, 12].indexOf(this.totalCheckOptions[i].id) > -1) {
this.mapOptions.push(this.totalCheckOptions[i]);
}
else if ([13, 14].indexOf(this.totalCheckOptions[i].id) > -1) {
this.meetingOptions.push(this.totalCheckOptions[i]);
} else {
this.dataOptions.push(this.totalCheckOptions[i]);
}
}
},