修改弹窗遮挡

This commit is contained in:
筱野
2025-10-14 23:13:50 +08:00
parent f95353750a
commit d2e051f93a
6 changed files with 60 additions and 31 deletions

View File

@@ -20,6 +20,7 @@ export type CoverImageValue = {
export interface UploadCoverProps {
value: CoverImageValue[]
changePicker?: (value: boolean) => void
onChange: (value: CoverImageValue[] | ((prev: CoverImageValue[]) => CoverImageValue[])
) => void
source?: source
@@ -56,6 +57,7 @@ export default function UploadCover(props: UploadCoverProps) {
maxCount = 9,
align = 'center',
tag = 'cover',
changePicker
} = props
const [visible, setVisible] = useState(false)
@@ -82,11 +84,18 @@ export default function UploadCover(props: UploadCoverProps) {
onChange(value.filter(item => item.id !== image.id))
}
const openPicker = (value: boolean) => {
setVisible(value)
if (changePicker) {
changePicker(value)
}
}
return (
<>
<CommonPopup
visible={visible}
onClose={() => setVisible(false)}
onClose={() => openPicker(false)}
round
position="bottom"
hideFooter
@@ -115,7 +124,7 @@ export default function UploadCover(props: UploadCoverProps) {
<UploadSourcePopup tag={tag} ref={uploadSourcePopupRef} onAdd={onAdd} />
<div className={`upload-cover-root ${value.length === 0 && align === 'center' ? 'upload-cover-act-center' : ''}`}>
{value.length < maxCount && (
<div className="upload-cover-act" onClick={() => setVisible(true)}>
<div className="upload-cover-act" onClick={() => openPicker(true)}>
<Image className='upload-cover-act-icon' src={img.ICON_ADD} />
<div className="upload-cover-text"></div>
</div>