Untitled
unknown
plain_text
2 years ago
1.4 kB
4
Indexable
import React, { useEffect, useState } from 'react'; import imageCompressor from 'image-compressor'; import './ImageFetcher.css'; const ImageFetcher = () => { const [fetchedImages, setFetchedImages] = useState([]); useEffect(() => { const fetchAndDecompressImages = async () => { // Fetch stored images from local storage const storedImages = localStorage.getItem('uploadedImages'); // Parse stored base64 strings if (storedImages) { const base64Images = JSON.parse(storedImages); const decompressedImages = await Promise.all(base64Images.map(decompressImage)); setFetchedImages(decompressedImages); } }; fetchAndDecompressImages(); }, []); const decompressImage = async (base64String) => { const compressedImageBlob = await fetch(base64String).then((res) => res.blob()); const decompressedImage = await imageCompressor(compressedImageBlob, { quality: 1 }); return URL.createObjectURL(decompressedImage); }; return ( <div className="image-grid-container"> <h2>Fetched Images</h2> <div className="image-grid"> {fetchedImages.map((imageSrc, index) => ( <div key={index} className="image-item"> <img src={imageSrc} alt={`Uploaded ${index}`} /> </div> ))} </div> </div> ); }; export default ImageFetcher;
Editor is loading...
Leave a Comment