|
|
|
@ -7,7 +7,18 @@ |
|
|
|
width="500px" |
|
|
|
@ok="handleSubmit" |
|
|
|
> |
|
|
|
<BasicForm @register="registerForm" /> |
|
|
|
<BasicForm @register="registerForm"> |
|
|
|
<template #menu="{ model, field }"> |
|
|
|
<BasicTree |
|
|
|
v-model:value="model[field]" |
|
|
|
:treeData="treeData" |
|
|
|
:replaceFields="{ title: 'menuName', key: 'id' }" |
|
|
|
checkable |
|
|
|
toolbar |
|
|
|
title="菜单分配" |
|
|
|
/> |
|
|
|
</template> |
|
|
|
</BasicForm> |
|
|
|
</BasicDrawer> |
|
|
|
</template> |
|
|
|
<script lang="ts"> |
|
|
|
@ -15,17 +26,19 @@ |
|
|
|
import { BasicForm, useForm } from '/@/components/Form/index'; |
|
|
|
import { formSchema } from './role.data'; |
|
|
|
import { BasicDrawer, useDrawerInner } from '/@/components/Drawer'; |
|
|
|
import { BasicTree, TreeItem } from '/@/components/Tree'; |
|
|
|
|
|
|
|
import { getMenuList } from '/@/api/demo/system'; |
|
|
|
|
|
|
|
export default defineComponent({ |
|
|
|
name: 'RoleDrawer', |
|
|
|
components: { BasicDrawer, BasicForm }, |
|
|
|
components: { BasicDrawer, BasicForm, BasicTree }, |
|
|
|
emits: ['success', 'register'], |
|
|
|
setup(_, { emit }) { |
|
|
|
const isUpdate = ref(true); |
|
|
|
const treeData = ref<TreeItem[]>([]); |
|
|
|
|
|
|
|
const [registerForm, { resetFields, setFieldsValue, updateSchema, validate }] = useForm({ |
|
|
|
const [registerForm, { resetFields, setFieldsValue, validate }] = useForm({ |
|
|
|
labelWidth: 90, |
|
|
|
schemas: formSchema, |
|
|
|
showActionButtonGroup: false, |
|
|
|
@ -41,11 +54,7 @@ |
|
|
|
...data.record, |
|
|
|
}); |
|
|
|
} |
|
|
|
const treeData = await getMenuList(); |
|
|
|
updateSchema({ |
|
|
|
field: 'parentMenu', |
|
|
|
componentProps: { treeData }, |
|
|
|
}); |
|
|
|
treeData.value = ((await getMenuList()) as any) as TreeItem[]; |
|
|
|
}); |
|
|
|
|
|
|
|
const getTitle = computed(() => (!unref(isUpdate) ? '新增角色' : '编辑角色')); |
|
|
|
@ -63,7 +72,13 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return { registerDrawer, registerForm, getTitle, handleSubmit }; |
|
|
|
return { |
|
|
|
registerDrawer, |
|
|
|
registerForm, |
|
|
|
getTitle, |
|
|
|
handleSubmit, |
|
|
|
treeData, |
|
|
|
}; |
|
|
|
}, |
|
|
|
}); |
|
|
|
</script> |
|
|
|
|