From 639520ad5ddf829875ab517067abf2b45ebc04c2 Mon Sep 17 00:00:00 2001 From: Vben Date: Fri, 11 Jun 2021 22:19:02 +0800 Subject: [PATCH] feat(use-drawer): add closeDrawer function --- CHANGELOG.zh_CN.md | 1 + src/components/Drawer/src/props.ts | 5 ----- src/components/Drawer/src/typing.ts | 1 + src/components/Drawer/src/useDrawer.ts | 3 +++ src/views/demo/comp/drawer/index.vue | 12 +----------- 5 files changed, 6 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index 6798f3d6acc..d0f97ecd52c 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -4,6 +4,7 @@ - `Cropper` 头像裁剪新增圆形裁剪功能 - 新增头像上传组件 +- `useDrawer`新增`closeDrawer`函数 ## 2.4.2(2021-06-10) diff --git a/src/components/Drawer/src/props.ts b/src/components/Drawer/src/props.ts index 813e2503078..0a7ca8cdfe8 100644 --- a/src/components/Drawer/src/props.ts +++ b/src/components/Drawer/src/props.ts @@ -35,15 +35,10 @@ export const basicProps = { getContainer: { type: [Object, String] as PropType, }, - scrollOptions: { - type: Object as PropType, - default: null, - }, closeFunc: { type: [Function, Object] as PropType, default: null, }, - triggerWindowResize: { type: Boolean }, destroyOnClose: { type: Boolean }, ...footerProps, }; diff --git a/src/components/Drawer/src/typing.ts b/src/components/Drawer/src/typing.ts index 516edc3eb11..0df3dfdd1d6 100644 --- a/src/components/Drawer/src/typing.ts +++ b/src/components/Drawer/src/typing.ts @@ -9,6 +9,7 @@ export interface DrawerInstance { export interface ReturnMethods extends DrawerInstance { openDrawer: (visible?: boolean, data?: T, openOnSet?: boolean) => void; + closeDrawer: () => void; getVisible?: ComputedRef; } diff --git a/src/components/Drawer/src/useDrawer.ts b/src/components/Drawer/src/useDrawer.ts index 70f43f4540e..5c5be496b98 100644 --- a/src/components/Drawer/src/useDrawer.ts +++ b/src/components/Drawer/src/useDrawer.ts @@ -92,6 +92,9 @@ export function useDrawer(): UseDrawerReturnType { dataTransferRef[unref(uid)] = toRaw(data); } }, + closeDrawer: () => { + getInstance()?.setDrawerProps({ visible: false }); + }, }; return [register, methods]; diff --git a/src/views/demo/comp/drawer/index.vue b/src/views/demo/comp/drawer/index.vue index 48214f2c328..7ea902bfe73 100644 --- a/src/views/demo/comp/drawer/index.vue +++ b/src/views/demo/comp/drawer/index.vue @@ -39,19 +39,9 @@ const [register1, { openDrawer: openDrawer1, setDrawerProps }] = useDrawer(); const [register2, { openDrawer: openDrawer2 }] = useDrawer(); const [register3, { openDrawer: openDrawer3 }] = useDrawer(); - const [ - register4, - { - openDrawer: openDrawer4, - // ransferDrawerData - }, - ] = useDrawer(); + const [register4, { openDrawer: openDrawer4 }] = useDrawer(); const [register5, { openDrawer: openDrawer5 }] = useDrawer(); function send() { - // transferDrawerData({ - // data: 'content', - // info: 'Info', - // }); openDrawer4(true, { data: 'content', info: 'Info',