feat: uploadCover
This commit is contained in:
@@ -22,8 +22,9 @@ export interface UploadCoverProps {
|
||||
value: CoverImageValue[]
|
||||
onChange: (value: CoverImageValue[] | ((prev: CoverImageValue[]) => CoverImageValue[])
|
||||
) => void
|
||||
source: source
|
||||
maxCount: number
|
||||
source?: source
|
||||
maxCount?: number
|
||||
align?: 'center' | 'left'
|
||||
}
|
||||
|
||||
// const values = [
|
||||
@@ -51,9 +52,11 @@ export default function UploadCover(props: UploadCoverProps) {
|
||||
const {
|
||||
value = [],
|
||||
onChange = () => void 0,
|
||||
source = ['album', 'history', 'preset'],
|
||||
source = ['album', 'history', 'preset'] as source,
|
||||
maxCount = 9,
|
||||
align = 'center',
|
||||
} = props
|
||||
|
||||
const [visible, setVisible] = useState(false)
|
||||
|
||||
const onAdd = useCallback((images: CoverImageValue[]) => {
|
||||
@@ -64,7 +67,6 @@ export default function UploadCover(props: UploadCoverProps) {
|
||||
const onWxAdd = useCallback((images: CoverImageValue[], onFileUploaded: Promise<{ id: string, data: uploadFileResponseData }[]>) => {
|
||||
onAdd(images)
|
||||
onFileUploaded.then(res => {
|
||||
console.log(res, 11111)
|
||||
onAdd(res.map(item => ({
|
||||
id: item.id,
|
||||
url: item.data.file_path,
|
||||
@@ -102,7 +104,7 @@ export default function UploadCover(props: UploadCoverProps) {
|
||||
}
|
||||
</View>
|
||||
</CommonPopup>
|
||||
<div className={`upload-cover-root ${value.length === 0 ? 'upload-cover-act-center' : ''}`}>
|
||||
<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)}>
|
||||
<Image className='upload-cover-act-icon' src={img.ICON_ADD} />
|
||||
|
||||
@@ -33,9 +33,9 @@ export default function UploadFromWx(props: UploadFromWxProps) {
|
||||
id: (Date.now() + count++).toString(),
|
||||
}))
|
||||
const onFileUploaded = uploadApi.batchUpload(files)
|
||||
onAdd(res.tempFiles.map(item => ({
|
||||
id: Date.now().toString(),
|
||||
url: item.path,
|
||||
onAdd(files.map(item => ({
|
||||
id: item.id,
|
||||
url: item.filePath,
|
||||
})), onFileUploaded) // TODO: add loading state
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user