File tree 1 file changed +14
-5
lines changed
1 file changed +14
-5
lines changed Original file line number Diff line number Diff line change @@ -9,21 +9,30 @@ const ImageUpload = ({ onImageUpload }) => {
9
9
const { showSnackbar } = useSnackbar ( ) ;
10
10
const [ images , setImages ] = useState ( [ ] ) ;
11
11
12
- const onDrop = useCallback ( ( acceptedFiles ) => {
13
- if ( images . length + acceptedFiles . length > 2 ) {
12
+ const onDrop = useCallback ( ( acceptedFiles , fileRejections ) => {
13
+ if ( fileRejections . length ) {
14
+ const { errors } = fileRejections [ 0 ] ;
15
+ if ( errors . length ) {
16
+ showSnackbar ( errors [ 0 ] . message , "error" ) ;
17
+ return ;
18
+ }
19
+ }
20
+
21
+ const totalImages = images . length + acceptedFiles . length ;
22
+ if ( totalImages > 2 ) {
14
23
showSnackbar ( "You can only upload up to 2 images" , "error" ) ;
15
24
return ;
16
25
}
17
-
26
+
18
27
const newImages = acceptedFiles . map ( ( file ) => {
19
28
return Object . assign ( file , {
20
29
preview : URL . createObjectURL ( file ) ,
21
30
imageName : file . name ,
22
31
} ) ;
23
32
} ) ;
33
+
24
34
uploadImages ( newImages ) ;
25
-
26
- } , [ images , onImageUpload ] ) ;
35
+ } , [ images , onImageUpload , showSnackbar ] ) ;
27
36
28
37
const uploadImages = async ( images ) => {
29
38
const formData = new FormData ( ) ;
You can’t perform that action at this time.
0 commit comments