0

我正在使用 react-dropzone 插件进行文件上传。我担心如何将每个文件转换为 base64:

例如:

这是我获取文件的函数:我在这里为每个文件创建例如拇指并附加到对象。但是如何添加到 item here prop like base64string: 并将保留每个文件的 base64 数据?

this.onDrop = files => {
      files.map(file =>
        Object.assign(file, {
          preview: URL.createObjectURL(file),
        })
      );
    };
4

1 回答 1

3

看看这个,你可以获取文件,然后你可以将它们存储到状态实例的图像数组中。

onDropHandler = (files) => {
    files.map(file => {
        const reader = new FileReader();
        reader.onload = (event) => {
            //store result into your state array.
            this.setState(prevState => {
                const updatedImages = [...prevState.images, event.target.result];
                return {
                    images: updatedImages,
                }
            })
            console.log(event.target.result);
        };
        reader.readAsDataURL(file);
    });
}
于 2019-08-16T10:04:53.917 回答