diff --git a/src/assets/styles/element-ui.scss b/src/assets/styles/element-ui.scss index 73de1bf..cec7b68 100644 --- a/src/assets/styles/element-ui.scss +++ b/src/assets/styles/element-ui.scss @@ -137,3 +137,14 @@ .el-dialog__headerbtn { width: 47px !important; } + +// el-tree + +.tree-item-flex { + &.is-expanded .el-tree-node__children { + display: flex !important; + flex-direction: column; + flex-direction: row; + flex-wrap: wrap; + } +} diff --git a/src/views/system/role/index.vue b/src/views/system/role/index.vue index 1c017c1..08ddb63 100644 --- a/src/views/system/role/index.vue +++ b/src/views/system/role/index.vue @@ -81,7 +81,7 @@ - + @@ -101,18 +101,28 @@ node-key="id" :check-strictly="!form.menuCheckStrictly" empty-text="加载中,请稍后" + highlight-current :filter-node-method="menuFilterNode" - :props="defaultProps"> + :props="{ children: 'children', label: 'label', class: customNodeClass }"> + + - + - + @@ -183,7 +193,7 @@ {{ $t('btn.cancel') }} {{ $t('btn.submit') }} - + @@ -267,7 +277,8 @@ const state = reactive({ }, defaultProps: { children: 'children', - label: 'label' + label: 'label', + menuType: customNodeClass } }) const menuRef = ref() @@ -616,6 +627,13 @@ getList() proxy.getDicts('sys_normal_disable').then((response) => { statusOptions.value = response.data }) + +function customNodeClass(data, node) { + if (data.menuType == 'C') { + return 'tree-item-flex' + } + return null +}