react images uploading
3.1.7
เวลา 22.00 น
npm install --save react-images-uploading
เส้นด้าย
yarn add react-images-uploading
คุณสามารถตรวจสอบการสาธิตพื้นฐานได้ที่นี่:
ขั้นพื้นฐาน
import React from 'react' ; import ImageUploading from 'react-images-uploading' ; export function App ( ) { const [ images , setImages ] = React . useState ( [ ] ) ; const maxNumber = 69 ; const onChange = ( imageList , addUpdateIndex ) => { // data for submit console . log ( imageList , addUpdateIndex ) ; setImages ( imageList ) ; } ; return ( < div className = "App" > < ImageUploading multiple value = { images } onChange = { onChange } maxNumber = { maxNumber } dataURLKey = "data_url" > { ( { imageList , onImageUpload , onImageRemoveAll , onImageUpdate , onImageRemove , isDragging , dragProps , } ) => ( // write your building UI < div className = "upload__image-wrapper" > < button style = { isDragging ? { color : 'red' } : undefined } onClick = { onImageUpload } { ... dragProps } > Click or Drop here < / button > < button onClick = { onImageRemoveAll } > Remove all images < / button > { imageList . map ( ( image , index ) => ( < div key = { index } className = "image-item" > < img src = { image [ 'data_url' ] } alt = "" width = "100" / > < div className = "image-item__btn-wrapper" > < button onClick = { ( ) => onImageUpdate ( index ) } > Update < / button > < button onClick = { ( ) => onImageRemove ( index ) } > Remove < / button > < / div > < / div > ) ) } < / div > ) } < / ImageUploading > < / div > ) ; }
การตรวจสอบ
...
{ ( { imageList , onImageUpload , onImageRemoveAll , errors } ) => (
errors && < div >
{ errors . maxNumber && < span > Number of selected images exceed maxNumber < / span>}
{ errors . acceptType && < span > Your selected file type is not allow < / span>}
{ errors . maxFileSize && < span > Selected file size exceed maxFileSize < / span>}
{ errors . resolution && < span > Selected file is not match your desired resolution < / span>}
< / div >
) }
...
ลากและวาง
... { ( { imageList , dragProps , isDragging } ) => ( < div { ... dragProps } > { isDragging ? "Drop here please" : "Upload space" } { imageList . map ( ( image , index ) => ( < img key = { index } src = { image . data_url } / > ) ) } < / div > ) } ...
พารามิเตอร์ | พิมพ์ | ตัวเลือก | ค่าเริ่มต้น | คำอธิบาย |
---|---|---|---|---|
ค่า | อาร์เรย์ | - | รายการภาพ | |
เมื่อเปลี่ยน | การทำงาน | (imageList, addUpdateIndex) => เป็นโมฆะ | เรียกว่าเมื่อมีการเรียกการดำเนินการเพิ่ม อัปเดต หรือลบ | |
ข้อมูลURLKey | เชือก | dataURL | ชื่อฟิลด์ที่กำหนดเองซึ่งกำหนด base64 ของรูปภาพที่เลือกไว้ | |
หลายรายการ | บูลีน | เท็จ | ตั้งค่า true สำหรับการเลือกหลายรายการ | |
จำนวนสูงสุด | ตัวเลข | 1,000 | จำนวนภาพที่ผู้ใช้สามารถเลือกได้หากโหมด = multiple | |
บนข้อผิดพลาด | การทำงาน | (ข้อผิดพลาด ไฟล์) => เป็นโมฆะ | โทรมาเมื่อมีข้อผิดพลาด | |
ยอมรับประเภท | อาร์เรย์ | ['jpg', 'gif', 'png'] | - | นามสกุลไฟล์ที่จะอัพโหลด |
maxFileSize | ตัวเลข | ขนาดภาพสูงสุด (ไบต์) และใช้ในการตรวจสอบ | ||
ความละเอียดประเภท | เชือก | 'แน่นอน' | 'น้อย' | 'เพิ่มเติม' | 'อัตราส่วน' | ใช้สำหรับการตรวจสอบความถูกต้องของภาพด้วยความกว้างและความสูงที่ระบุ | |
ความละเอียดความกว้าง | ตัวเลข | > 0 | ||
ความละเอียดความสูง | ตัวเลข | > 0 | ||
อุปกรณ์ประกอบฉากอินพุต | React.HTMLProps | |||
อนุญาต NonImageType | บูลีน | เท็จ | ใช้สำหรับการอัพโหลดวัตถุประสงค์ที่ไม่ใช่รูปภาพ (เช่น txt, pdf, heic, ...) |
ความละเอียดประเภท
ค่า | คำอธิบาย |
---|---|
แน่นอน | ความกว้างของภาพ === ความละเอียดความกว้าง && ความสูงของภาพ === ความละเอียดความสูง |
อัตราส่วน | (ความละเอียดความกว้าง / ความละเอียดความสูง) === (ความกว้างของภาพ / ความสูงของภาพ) |
น้อย | ความกว้างของภาพ < ความละเอียดความกว้าง && ความสูงของภาพ < ความละเอียดความสูง |
มากกว่า | ความกว้างของรูปภาพ > ความละเอียดความกว้าง && ความสูงของรูปภาพ > ความละเอียดความสูง |
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
รายการรูปภาพ | อาร์เรย์ | รายการรูปภาพที่จะเรนเดอร์ |
onImageUpload | การทำงาน | เรียกว่าเมื่อองค์ประกอบคลิกและทริกเกอร์เพื่อเปิดกล่องโต้ตอบไฟล์ |
onImageRemoveAll | การทำงาน | เรียกว่าเมื่อลบภาพทั้งหมด |
onImageUpdate | (updateIndex: number) => เป็นโมฆะ | เรียกว่าเมื่ออัพเดตรูปภาพที่ updateIndex |
onImageRemove | (deleteIndex: number | number[]) => void | เรียกว่าเมื่อลบภาพหนึ่งภาพหรือรายการ |
ข้อผิดพลาด | วัตถุ | วัตถุที่ส่งออกของการตรวจสอบ |
ลากอุปกรณ์ประกอบฉาก | วัตถุ | อุปกรณ์ประกอบฉากองค์ประกอบดั้งเดิมสำหรับคุณสมบัติการลากและวาง |
คือการลาก | บูลีน | "จริง" หากรูปภาพถูกลาก |
ขอขอบคุณผู้คนที่แสนวิเศษเหล่านี้ (คีย์อีโมจิ):
vutoan266 - - | เดวิด เหงียน - - | ดีเค - - - | ไอแซค มาเซรูก้า |
โครงการนี้เป็นไปตามข้อกำหนดของผู้มีส่วนร่วมทั้งหมด ยินดีต้อนรับการบริจาคใด ๆ !