Showing
3 changed files
with
19 additions
and
3 deletions
| @@ -88,6 +88,7 @@ export function useCardListSelected( | @@ -88,6 +88,7 @@ export function useCardListSelected( | ||
| 88 | 88 | ||
| 89 | function clearSelectedKeys() { | 89 | function clearSelectedKeys() { |
| 90 | selectedKeys.value = []; | 90 | selectedKeys.value = []; |
| 91 | + unref(getSelectionsRef)?.onUnSelectAll?.(); // 新加一行反选事件 | ||
| 91 | } | 92 | } |
| 92 | 93 | ||
| 93 | function getSelectedKeys() { | 94 | function getSelectedKeys() { |
| @@ -100,9 +101,9 @@ export function useCardListSelected( | @@ -100,9 +101,9 @@ export function useCardListSelected( | ||
| 100 | } | 101 | } |
| 101 | 102 | ||
| 102 | function selectAllToggle() { | 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 | function getSelections() { | 109 | function getSelections() { |
| @@ -65,4 +65,6 @@ export interface CardListSelectionsType { | @@ -65,4 +65,6 @@ export interface CardListSelectionsType { | ||
| 65 | beforeSelectValidate?: (record: Recordable) => boolean; | 65 | beforeSelectValidate?: (record: Recordable) => boolean; |
| 66 | onSelect?: (record: Recordable, selected: boolean, allSelectedRecord: Recordable[]) => any; | 66 | onSelect?: (record: Recordable, selected: boolean, allSelectedRecord: Recordable[]) => any; |
| 67 | onSelectAll?: (selectedRecords: Recordable[]) => any; | 67 | onSelectAll?: (selectedRecords: Recordable[]) => any; |
| 68 | + onUnSelectAll?: () => any; // 新加一行反选方法 | ||
| 69 | + onSelectToggle?: (selectStatus: boolean) => any; // 新加一行切换全选反选方法 | ||
| 68 | } | 70 | } |
| @@ -63,6 +63,19 @@ | @@ -63,6 +63,19 @@ | ||
| 63 | onSelect: (_record, _flag, allSelecteds) => { | 63 | onSelect: (_record, _flag, allSelecteds) => { |
| 64 | disabledDeleteFlag.value = !allSelecteds.length; | 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 |