javascript - 如何在这里运行 this.setState 函数
问题描述
我无法在第 132 行运行 this.setState
解决方案
对 的处理程序使用箭头语法reader.onloaded
。
reader.onloaded = () => {
preview.src = reader.result
this.setState(...)
}
原因是因为function
有它自己的this
因此会阻止你访问React.Component
's this
.
使用箭头语法创建的方法不会创建自己的this
. 或者您也可以绑定this
到该函数。
reader.onloaded = (function() {
preview.src = reader.result
this.setState(...)
}).bind(this)
,这很有效,但你可以决定是否使用它
推荐阅读
- powershell - 将转换后的用户共享邮箱带到 Office 365 云共享邮箱
- google-apps-script - 如何创建作为对 Google Web 应用程序的获取请求的链接
- javascript - 如何在对象类型文档字段的属性上使用 FieldValue.increment()
- sql - 如果对象已连接,获取标志的最佳方法是什么?
- reporting-services - 如何在 rdl 报告的一行中获取组总数?
- apache-kafka - 引导代理断开连接 => KeeperErrorCode = /brokers/topcis/xxxx/partitions/2/state 的 NoNode + 找不到密钥
- javascript - 使用正则表达式名词过滤器输入特定代码
- python - 如何“降级”一个 Keras/Tensorflow 模型,以便旧代码可以使用它
- azure - 如何将 ssis 原始文件转换为 Parquet
- javascript - 如何提醒下个月日期