import { useState } from 'react';
function App() {
const [imgfile, uploadimg] = useState([])
console.log("Image FIles",imgfile);
const imgFilehandler = (e) => {
if (e.target.files.length !== 0) {
uploadimg(imgfile => [...imgfile, URL.createObjectURL(e.target.files[0])])
}
}
return (
<div className="App">
<div>
<center>
<h2>Upload</h2>
<input type="file" onChange={imgFilehandler} />
<hr />
<h2>Preview</h2>
{imgfile.map((elem) => {
return <>
<span key={elem}>
<img src={elem} height="200" width="200" alt="med1" />
</span>
</>
})}
</center>
</div>
</div>
);
}
export default App;
import React, { useState } from "react";
const UploadAndDisplayImage = () => {
const [selectedImage, setSelectedImage] = useState(null);
return (
<div>
<h1>Upload and Display Image usign React Hook's</h1>
{selectedImage && (
<div>
<img alt="not fount" width={"250px"} src={URL.createObjectURL(selectedImage)} />
<br />
<button onClick={()=>setSelectedImage(null)}>Remove</button>
</div>
)}
<br />
<br />
<input
type="file"
name="myImage"
onChange={(event) => {
console.log(event.target.files[0]);
setSelectedImage(event.target.files[0]);
}}
/>
</div>
);
};
export default UploadAndDisplayImage;
import FileBase64 from "react-file-base64";
// FileBase64 <- use as component
<FileBase64
type="file"
multiple={false} <- if want to upload multiple images set "true"
onDone={} <- take callback function
/>
// onDone return an object of: filename, fileType, base64 data
// use the setState or function of useState to grap the base64 data
// reactjs codeto browse and upload an image from your device
const addImage =async() => {
const { value: file } = await Swal.fire({
title: 'Select image',
input: 'file',
inputAttributes: {
'accept': 'image/*',
'aria-label': 'Upload your profile picture'
}
})
if (file) {
const reader = new FileReader()
reader.onload = (e) => {
Swal.fire({
title: 'Your uploaded picture',
imageUrl: e.target.result,
imageAlt: 'The uploaded picture'
}
)
console.log(e.target.result);
}
reader.readAsDataURL(file)
}