fix: select components used in modal pop-ups cannot be selected (#4368)

* fix: select components used in modal pop-ups cannot be selected

* chore: update ci

* chore: update css
This commit is contained in:
Vben
2024-09-11 23:10:35 +08:00
committed by GitHub
parent 61faa1895a
commit 855ac02622
13 changed files with 163 additions and 22 deletions

View File

@@ -41,6 +41,7 @@ export class ModalApi {
isOpen: false,
loading: false,
modal: true,
openAutoFocus: false,
showCancelButton: true,
showConfirmButton: true,
title: '',

View File

@@ -75,6 +75,10 @@ export interface ModalProps {
* @default true
*/
modal?: boolean;
/**
* 是否自动聚焦
*/
openAutoFocus?: boolean;
/**
* 是否显示取消按钮
* @default true

View File

@@ -68,6 +68,7 @@ const {
header,
loading: showLoading,
modal,
openAutoFocus,
showCancelButton,
showConfirmButton,
title,
@@ -133,6 +134,13 @@ function escapeKeyDown(e: KeyboardEvent) {
e.preventDefault();
}
}
function handerOpenAutoFocus(e: Event) {
if (!openAutoFocus.value) {
e?.preventDefault();
}
}
// pointer-down-outside
function pointerDownOutside(e: Event) {
const target = e.target as HTMLElement;
@@ -166,6 +174,7 @@ function pointerDownOutside(e: Event) {
close-class="top-3"
@escape-key-down="escapeKeyDown"
@interact-outside="interactOutside"
@open-auto-focus="handerOpenAutoFocus"
@pointer-down-outside="pointerDownOutside"
>
<DialogHeader