Commit 639520ad5ddf829875ab517067abf2b45ebc04c2

Authored by Vben
1 parent c7c95dd2

feat(use-drawer): add closeDrawer function

CHANGELOG.zh_CN.md
@@ -4,6 +4,7 @@ @@ -4,6 +4,7 @@
4 4
5 - `Cropper` 头像裁剪新增圆形裁剪功能 5 - `Cropper` 头像裁剪新增圆形裁剪功能
6 - 新增头像上传组件 6 - 新增头像上传组件
  7 +- `useDrawer`新增`closeDrawer`函数
7 8
8 ## 2.4.2(2021-06-10) 9 ## 2.4.2(2021-06-10)
9 10
src/components/Drawer/src/props.ts
@@ -35,15 +35,10 @@ export const basicProps = { @@ -35,15 +35,10 @@ export const basicProps = {
35 getContainer: { 35 getContainer: {
36 type: [Object, String] as PropType<any>, 36 type: [Object, String] as PropType<any>,
37 }, 37 },
38 - scrollOptions: {  
39 - type: Object as PropType<any>,  
40 - default: null,  
41 - },  
42 closeFunc: { 38 closeFunc: {
43 type: [Function, Object] as PropType<any>, 39 type: [Function, Object] as PropType<any>,
44 default: null, 40 default: null,
45 }, 41 },
46 - triggerWindowResize: { type: Boolean },  
47 destroyOnClose: { type: Boolean }, 42 destroyOnClose: { type: Boolean },
48 ...footerProps, 43 ...footerProps,
49 }; 44 };
src/components/Drawer/src/typing.ts
@@ -9,6 +9,7 @@ export interface DrawerInstance { @@ -9,6 +9,7 @@ export interface DrawerInstance {
9 9
10 export interface ReturnMethods extends DrawerInstance { 10 export interface ReturnMethods extends DrawerInstance {
11 openDrawer: <T = any>(visible?: boolean, data?: T, openOnSet?: boolean) => void; 11 openDrawer: <T = any>(visible?: boolean, data?: T, openOnSet?: boolean) => void;
  12 + closeDrawer: () => void;
12 getVisible?: ComputedRef<boolean>; 13 getVisible?: ComputedRef<boolean>;
13 } 14 }
14 15
src/components/Drawer/src/useDrawer.ts
@@ -92,6 +92,9 @@ export function useDrawer(): UseDrawerReturnType { @@ -92,6 +92,9 @@ export function useDrawer(): UseDrawerReturnType {
92 dataTransferRef[unref(uid)] = toRaw(data); 92 dataTransferRef[unref(uid)] = toRaw(data);
93 } 93 }
94 }, 94 },
  95 + closeDrawer: () => {
  96 + getInstance()?.setDrawerProps({ visible: false });
  97 + },
95 }; 98 };
96 99
97 return [register, methods]; 100 return [register, methods];
src/views/demo/comp/drawer/index.vue
@@ -39,19 +39,9 @@ @@ -39,19 +39,9 @@
39 const [register1, { openDrawer: openDrawer1, setDrawerProps }] = useDrawer(); 39 const [register1, { openDrawer: openDrawer1, setDrawerProps }] = useDrawer();
40 const [register2, { openDrawer: openDrawer2 }] = useDrawer(); 40 const [register2, { openDrawer: openDrawer2 }] = useDrawer();
41 const [register3, { openDrawer: openDrawer3 }] = useDrawer(); 41 const [register3, { openDrawer: openDrawer3 }] = useDrawer();
42 - const [  
43 - register4,  
44 - {  
45 - openDrawer: openDrawer4,  
46 - // ransferDrawerData  
47 - },  
48 - ] = useDrawer(); 42 + const [register4, { openDrawer: openDrawer4 }] = useDrawer();
49 const [register5, { openDrawer: openDrawer5 }] = useDrawer(); 43 const [register5, { openDrawer: openDrawer5 }] = useDrawer();
50 function send() { 44 function send() {
51 - // transferDrawerData({  
52 - // data: 'content',  
53 - // info: 'Info',  
54 - // });  
55 openDrawer4(true, { 45 openDrawer4(true, {
56 data: 'content', 46 data: 'content',
57 info: 'Info', 47 info: 'Info',