无法读取未定义的属性'setState'–进度条[重复]。


我想在我的反应代码中设置一个进度条。

class imageUpload extends Component {
  constructor(props) {
    super(props);
    this.state = {
      image: null,
      url: '',
      progress: 0
    }

在我的状态下,我有一个进度条。

upload = (image) => {
    ImageTools.resize(image, {
        width: 320, // maximum width
        height: 240 // maximum height
    }, function(blob, didItResize) {

        document.getElementById('preview').src = window.URL.createObjectURL(blob);

      const uploadTask = storage.ref(`images/${image.name}`).put(blob);
      uploadTask.on('state_changed', 
      (snapshot) => {
        // progrss function ....
        const progress = Math.round((snapshot.bytesTransferred / snapshot.totalBytes) * 100);
        this.setState({progress}); // Unhandled Rejection (TypeError): Cannot read property 'setState' of undefined
      }, 

当我选择一个图片并上传它时,它将被传送到服务器,但我得到这个错误。Unhandled Rejection (TypeError): Cannot read property 'setState' of undefined

html

<progress value={this.state.progress} max="100"/>

有什么想法,为什么?

谢谢

解决方案:

我想你需要转换你的匿名函数。function(blob, didItResize){} 变成一个箭头函数 (blob, didItResize) => {}.

给TA打赏
共{{data.count}}人
人已打赏
未分类

文本与R的相关性

2022-9-8 10:38:41

未分类

如何在swift中使用UIImagePickerController.InfoKey.editedImage真正编辑图片?

2022-9-8 10:38:43

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索