【问题标题】:Uncaught TypeError: Failed to execute 'createObjectURL' on 'URL': Overload resolution failed未捕获的类型错误:无法在“URL”上执行“createObjectURL”:重载解析失败
【发布时间】:2021-03-05 15:22:20
【问题描述】:

在我的 react 应用中,我使用 react-images-upload 上传图片

当我上传图片时,onDrop 函数将调用,在这个函数中我将此图片文件转换为对象 URL,如下代码所示

代码

onDrop = (picture) => {
     const localImageUrl = window.URL.createObjectURL(picture[0]);
     this.props.onFabricUploadedImage(localImageUrl)

}

然后将此objectURL传递给onFabricUploadedImage函数以将其存储在redux状态。

enter image description here

但是当我点击 X 删除上传的 img 时,它会出现错误,如上面附加的 img 所示

错误

Uncaught TypeError: Failed to execute 'createObjectURL' on 'URL': Overload resolution failed.

那么点击X后如何解决这个错误

【问题讨论】:

  • 您是否使用 FileReader 来读取文件?
  • @DanielRodríguezMeza No

标签: javascript reactjs


【解决方案1】:

请探索follow code并查看官方npm https://www.npmjs.com/package/react-images-upload

onDrop(picture) {
    this.setState({
        pictures: this.state.pictures.concat(picture),
    });
} 
  1. 当您单击按钮 (x) 时,您应该编辑状态 (this.setState([])

【讨论】:

  • 嘿,但我使用 this.props.onFabricUploadedImage(localImageUrl) 函数在 redux 中设置状态并将 objectURL 存储在 redux 状态
猜你喜欢
  • 2021-07-02
  • 1970-01-01
  • 2021-04-08
  • 2019-05-20
  • 1970-01-01
  • 1970-01-01
  • 2021-11-14
  • 2015-01-23
  • 1970-01-01
相关资源
最近更新 更多