Showing
3 changed files
with
19 additions
and
3 deletions
... | ... | @@ -88,6 +88,7 @@ export function useCardListSelected( |
88 | 88 | |
89 | 89 | function clearSelectedKeys() { |
90 | 90 | selectedKeys.value = []; |
91 | + unref(getSelectionsRef)?.onUnSelectAll?.(); // 新加一行反选事件 | |
91 | 92 | } |
92 | 93 | |
93 | 94 | function getSelectedKeys() { |
... | ... | @@ -100,9 +101,9 @@ export function useCardListSelected( |
100 | 101 | } |
101 | 102 | |
102 | 103 | function selectAllToggle() { |
103 | - unref(getDataSourceRef).length === unref(selectedKeys).length | |
104 | - ? (selectedKeys.value = []) | |
105 | - : selectedAll(); | |
104 | + const hasSelectedKey = unref(getDataSourceRef).length === unref(selectedKeys).length; | |
105 | + hasSelectedKey ? (selectedKeys.value = []) : selectedAll(); | |
106 | + unref(getSelectionsRef)?.onSelectToggle?.(hasSelectedKey); // 新加一行全选反选切换事件 | |
106 | 107 | } |
107 | 108 | |
108 | 109 | function getSelections() { | ... | ... |
... | ... | @@ -65,4 +65,6 @@ export interface CardListSelectionsType { |
65 | 65 | beforeSelectValidate?: (record: Recordable) => boolean; |
66 | 66 | onSelect?: (record: Recordable, selected: boolean, allSelectedRecord: Recordable[]) => any; |
67 | 67 | onSelectAll?: (selectedRecords: Recordable[]) => any; |
68 | + onUnSelectAll?: () => any; // 新加一行反选方法 | |
69 | + onSelectToggle?: (selectStatus: boolean) => any; // 新加一行切换全选反选方法 | |
68 | 70 | } | ... | ... |
... | ... | @@ -63,6 +63,19 @@ |
63 | 63 | onSelect: (_record, _flag, allSelecteds) => { |
64 | 64 | disabledDeleteFlag.value = !allSelecteds.length; |
65 | 65 | }, |
66 | + onSelectAll: () => { | |
67 | + // 全选事件 | |
68 | + disabledDeleteFlag.value = false; | |
69 | + }, | |
70 | + onUnSelectAll: () => { | |
71 | + // 反选事件 | |
72 | + disabledDeleteFlag.value = true; | |
73 | + }, | |
74 | + onSelectToggle: (status: boolean) => { | |
75 | + // 全选是false,反选是true | |
76 | + if (!status) disabledDeleteFlag.value = false; | |
77 | + else disabledDeleteFlag.value = true; | |
78 | + }, | |
66 | 79 | }, |
67 | 80 | }); |
68 | 81 | ... | ... |