将图像文件上传到状态并进行反应

时间:2018-02-16 20:39:34

标签: image reactjs web upload

我正在尝试使用此代码上传图片

data = IO::read(file_path).scrub("")
CSV.parse(data, :col_sep => ',', :headers => true)  do |row|
   puts row
end

这是州

<input type="file" id="InputFile" accept="image/*" value={this.state.image} onChange={this.handelChangeImage} />

}

这是绑定函数

constructor(props) {
super(props);
this.state = {
    image: [],
}

this.handelChangeImage = this.handelChangeImage.bind(this);

}

它给了我那个错误

  

未捕获DOMException:无法设置&#39;值&#39;属性&#39; HTMLInputElement&#39;:此输入元素接受一个文件名,该文件名只能以编程方式设置为空字符串。

任何帮助!!

2 个答案:

答案 0 :(得分:0)

看起来您没有正确阅读文件,请尝试以下方式:

handelChangeImage(event) {
  const reader = new FileReader();
  reader.onload = function(ee) {
    this.setState({fileData: ee.target.result});
  }.bind(this);
}

您可以找到有关FileReader here的更多信息。

答案 1 :(得分:0)

我的错误在这里

<input type="file" id="InputFile" accept="image/*" value={this.state.image} onChange={this.handelChangeImage} />

我必须删除此value={this.state.image}