如何使用 react-image-file-resizer 将 base64 URI 或 Blob 转换为文件

问题描述

我正在努力使用 react-image-file-resizer 将 base64 URI 或 Blob 转换为文件

const [image,setimage] = useState<File | null>(null);
const handleImage = async (e: any) => {
    try {
      const img = e.target.files[0];
      const resisedImg = await resizefile(img);
      setimage(resisedImg);
    } catch (err) {
      console.log(err);
    }
  };

此从 <input /> 获取图像文件。并使用 resizefile 调整图像大小。

const resizefile = (file: any) =>
    new Promise((resolve) => {
      Resizer.imageFileResizer(
        file,1280,'JPEG',100,(blob) => {
          resolve(blob);
        },'blob'
      );
    });

resizefile 返回 'unkNown'。 因此不能在 state 中设置它,因为 state 应该是 File。 这是我被卡住的地方。

如何编辑代码以调整图像大小并在调整大小后保持状态? 我想将 base64 URI 或 Blob 转换为文件或修复“未知”格式。 完成此过程后,图像文件上传到 Firestore。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)