为什么我不能在 React 中调用这个函数?

泰勒休斯

我收到错误:'TypeError: this.createCanvas is not a function'。

我不明白为什么。我已经在构造函数中绑定了它。

import React, { Component } from 'react';

class ImageEditor extends Component {

constructor() {
    super();
    this.createCanvas = this.createCanvas.bind(this);
    this.getImageDimensions = this.getImageDimensions.bind(this);
}

componentDidMount() {
    const imageurl = "https://storage.googleapis.com/" + this.props.location.state.imageuri;
    this.getImageDimensions(imageurl);
}

getImageDimensions(url) {
    var img = new Image();

    img.onload = function() {
        this.createCanvas(this.width, this.height);
    }

    img.src = url;
}

createCanvas(width, height) {
    let mycanvas = document.createElement("canvas");
    mycanvas.width = width;
    mycanvas.height = height;
    mycanvas.id = "mycanvas";
    document.body.appendChild(mycanvas);
}

render() {
    return (
        <h1>{this.imageurl}</h1>
    )
}

}

导出默认图像编辑器;

托尔

img.onload也必须得到一个箭头函数,否则this就不是你想要的。您可以在此处阅读有关为什么会出现这种情况的更多信息

img.onload = () => {
    this.createCanvas(img.width, img.height);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我不能在React中更改输入值?

来自分类Dev

为什么我不能在React中使用axios从localhost:3000调用localhost localhost:5000

来自分类Dev

为什么我不能在 react-typescript 中循环对象

来自分类Dev

为什么我不能在 react-native 中读取变量

来自分类Dev

为什么我不能在React类组件中创建变量?

来自分类Dev

为什么我不能在React-router 4.x中嵌套Route组件?

来自分类Dev

为什么我不能在react.js的状态数组中推送值?

来自分类Dev

为什么我不能在React中从D3js加载外部数据?

来自分类Dev

为什么我不能在 react-native 中更改按钮的颜色

来自分类Dev

为什么我不能在状态中存储对象数组:React JS

来自分类Dev

为什么我不能在React componentDidMount中获得DOMNode的样式(scrollHeight)?

来自分类Dev

为什么我不能在 react 组件中独立于 .map 使用 .sort ?

来自分类Dev

为什么我不能在 React Native 的 Animated.event() 中触发 nativeEvent 回调?

来自分类Dev

为什么我不能在addEventListener中调用类函数

来自分类Dev

为什么我不能在 Python 中使用变量作为参数来调用这个函数?

来自分类Dev

为什么不能在React JSX <canvas>对象上调用getContext函数?

来自分类Dev

为什么在javascript中我不能在这个函数中创建对象?

来自分类Dev

为什么我不能在 python 中读取这个子进程调用的输出?

来自分类Dev

为什么我不能在回调中调用useRef?

来自分类Dev

为什么我不能在这个草率模式函数中访问arguments.callee?

来自分类Dev

为什么我不能在我的回调中调用我的 vue 组件的函数

来自分类Dev

为什么我不能在react构造函数中访问默认道具,但可以在渲染器中访问呢?

来自分类Dev

为什么我不能在熊猫函数中应用shift?

来自分类Dev

为什么我的函数不能在 python 代码中执行?

来自分类Python

为什么我不能在Python中加入这个元组?

来自分类Dev

为什么我不能在 Flatlist 中显示我的项目?

来自分类Dev

为什么我不能在 init 中获得我的 fetchedResults?

来自分类Java

为什么我不能在方法之外调用变量?

来自分类Dev

为什么我不能在Option上调用flatMap [列表]

Related 相关文章

  1. 1

    为什么我不能在React中更改输入值?

  2. 2

    为什么我不能在React中使用axios从localhost:3000调用localhost localhost:5000

  3. 3

    为什么我不能在 react-typescript 中循环对象

  4. 4

    为什么我不能在 react-native 中读取变量

  5. 5

    为什么我不能在React类组件中创建变量?

  6. 6

    为什么我不能在React-router 4.x中嵌套Route组件?

  7. 7

    为什么我不能在react.js的状态数组中推送值?

  8. 8

    为什么我不能在React中从D3js加载外部数据?

  9. 9

    为什么我不能在 react-native 中更改按钮的颜色

  10. 10

    为什么我不能在状态中存储对象数组:React JS

  11. 11

    为什么我不能在React componentDidMount中获得DOMNode的样式(scrollHeight)?

  12. 12

    为什么我不能在 react 组件中独立于 .map 使用 .sort ?

  13. 13

    为什么我不能在 React Native 的 Animated.event() 中触发 nativeEvent 回调?

  14. 14

    为什么我不能在addEventListener中调用类函数

  15. 15

    为什么我不能在 Python 中使用变量作为参数来调用这个函数?

  16. 16

    为什么不能在React JSX <canvas>对象上调用getContext函数?

  17. 17

    为什么在javascript中我不能在这个函数中创建对象?

  18. 18

    为什么我不能在 python 中读取这个子进程调用的输出?

  19. 19

    为什么我不能在回调中调用useRef?

  20. 20

    为什么我不能在这个草率模式函数中访问arguments.callee?

  21. 21

    为什么我不能在我的回调中调用我的 vue 组件的函数

  22. 22

    为什么我不能在react构造函数中访问默认道具,但可以在渲染器中访问呢?

  23. 23

    为什么我不能在熊猫函数中应用shift?

  24. 24

    为什么我的函数不能在 python 代码中执行?

  25. 25

    为什么我不能在Python中加入这个元组?

  26. 26

    为什么我不能在 Flatlist 中显示我的项目?

  27. 27

    为什么我不能在 init 中获得我的 fetchedResults?

  28. 28

    为什么我不能在方法之外调用变量?

  29. 29

    为什么我不能在Option上调用flatMap [列表]

热门标签

归档