feat(use-drawer): add closeDrawer function

This commit is contained in:
Vben 2021-06-11 22:19:02 +08:00
parent c7c95dd2af
commit 639520ad5d
5 changed files with 6 additions and 16 deletions

View File

@ -4,6 +4,7 @@
- `Cropper` 头像裁剪新增圆形裁剪功能 - `Cropper` 头像裁剪新增圆形裁剪功能
- 新增头像上传组件 - 新增头像上传组件
- `useDrawer`新增`closeDrawer`函数
## 2.4.2(2021-06-10) ## 2.4.2(2021-06-10)

View File

@ -35,15 +35,10 @@ export const basicProps = {
getContainer: { getContainer: {
type: [Object, String] as PropType<any>, type: [Object, String] as PropType<any>,
}, },
scrollOptions: {
type: Object as PropType<any>,
default: null,
},
closeFunc: { closeFunc: {
type: [Function, Object] as PropType<any>, type: [Function, Object] as PropType<any>,
default: null, default: null,
}, },
triggerWindowResize: { type: Boolean },
destroyOnClose: { type: Boolean }, destroyOnClose: { type: Boolean },
...footerProps, ...footerProps,
}; };

View File

@ -9,6 +9,7 @@ export interface DrawerInstance {
export interface ReturnMethods extends DrawerInstance { export interface ReturnMethods extends DrawerInstance {
openDrawer: <T = any>(visible?: boolean, data?: T, openOnSet?: boolean) => void; openDrawer: <T = any>(visible?: boolean, data?: T, openOnSet?: boolean) => void;
closeDrawer: () => void;
getVisible?: ComputedRef<boolean>; getVisible?: ComputedRef<boolean>;
} }

View File

@ -92,6 +92,9 @@ export function useDrawer(): UseDrawerReturnType {
dataTransferRef[unref(uid)] = toRaw(data); dataTransferRef[unref(uid)] = toRaw(data);
} }
}, },
closeDrawer: () => {
getInstance()?.setDrawerProps({ visible: false });
},
}; };
return [register, methods]; return [register, methods];

View File

@ -39,19 +39,9 @@
const [register1, { openDrawer: openDrawer1, setDrawerProps }] = useDrawer(); const [register1, { openDrawer: openDrawer1, setDrawerProps }] = useDrawer();
const [register2, { openDrawer: openDrawer2 }] = useDrawer(); const [register2, { openDrawer: openDrawer2 }] = useDrawer();
const [register3, { openDrawer: openDrawer3 }] = useDrawer(); const [register3, { openDrawer: openDrawer3 }] = useDrawer();
const [ const [register4, { openDrawer: openDrawer4 }] = useDrawer();
register4,
{
openDrawer: openDrawer4,
// ransferDrawerData
},
] = useDrawer();
const [register5, { openDrawer: openDrawer5 }] = useDrawer(); const [register5, { openDrawer: openDrawer5 }] = useDrawer();
function send() { function send() {
// transferDrawerData({
// data: 'content',
// info: 'Info',
// });
openDrawer4(true, { openDrawer4(true, {
data: 'content', data: 'content',
info: 'Info', info: 'Info',