“ TypeError:无法读取未定义的属性'状态'”

时间:2019-02-23 19:04:16

标签: javascript reactjs

我正在尝试在reactjs中上传文件,我想在控制台中显示,但是当我单击上载按钮时,它会给我

  

“ TypeError:无法读取未定义的属性'状态'”

这是我的代码:

constructor(props) {
        super(props);

this.state = {
  selectedFile: null
};

this.fileSelectedHandler = this.fileSelectedHandler.bind(this);
}

fileSelectedHandler(event) {
  this.setState({
    selectedFile: event.target.files[0]
  })
}

handleUpload() {
  console.log(this.state.selectedFile)
}
render() {
 return (
    <div class="group">
      <input type="file" name="file" id="file" onChange={this.fileSelectedHandler} />
      <button onClick={this.handleUpload}> Upload </button>
    </div>
    )
}

我在以下位置收到错误消息:console.log(this.state.selectedFile)

1 个答案:

答案 0 :(得分:0)

有两种方法可以解决此问题:将handleUpload绑定为正确的内容,或以以下格式定义函数

handleUpload = () => {
console.log(this.state.selectedFile)
}