fix:角色勾选根节点获取失败问题
This commit is contained in:
@@ -80,10 +80,18 @@ async function init() {
|
||||
function clearChecks() {
|
||||
menuIds.value = [];
|
||||
}
|
||||
|
||||
const rootIds = ref([]);
|
||||
function fnModalTreeChecked(keys: any, info: any ) {
|
||||
let ids = Array.isArray(keys) ? keys : keys.checked;
|
||||
// ids = ids.concat(info.halfCheckedKeys);
|
||||
rootIds.value = info.halfCheckedKeys;
|
||||
menuIds.value = ids;
|
||||
}
|
||||
defineExpose({
|
||||
clearChecks,
|
||||
checkedKeys: menuIds,
|
||||
checkedKeys: ()=> {
|
||||
return menuIds.value.concat(rootIds.value).concat()
|
||||
},
|
||||
tree
|
||||
});
|
||||
</script>
|
||||
@@ -92,13 +100,15 @@ defineExpose({
|
||||
<div class="border-0.5 border-gray-300 rounded-md p-2 transition-all dark:border-dark-300" hover="border-gray-500">
|
||||
<SimpleScrollbar>
|
||||
<ATree
|
||||
v-model:checked-keys="menuIds"
|
||||
:selectable="false"
|
||||
:virtual="false"
|
||||
:tree-data="tree"
|
||||
checkable
|
||||
block-node
|
||||
/>
|
||||
:selectable="false"
|
||||
@check="fnModalTreeChecked"
|
||||
v-model:checked-keys="menuIds"
|
||||
:check-strictly="false"
|
||||
:tree-data="tree"
|
||||
>
|
||||
</ATree>
|
||||
</SimpleScrollbar>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -83,7 +83,7 @@ function closeDrawer() {
|
||||
|
||||
async function handleSubmit() {
|
||||
await validate();
|
||||
const menuIds = transformMenuChildWithRootIds(menuAuthRef.value?.tree || [], model.value.menuIds);
|
||||
const menuIds = menuAuthRef.value?.checkedKeys();
|
||||
|
||||
const {error} = await (props.operateType === 'edit' ? doPutRole : doPostRole)({
|
||||
...model.value,
|
||||
|
||||
Reference in New Issue
Block a user