【发布时间】:2020-05-09 01:16:35
【问题描述】:
我在 React.Component 子类中有以下代码
class SearchObject extends React.Component {
constructor(props) {
super(props)
var activateCanvas = <canvas></canvas>
var activateDraw = () => {
let ctx = activateCanvas.getContext('2d')
//draw stuff
}
activateDraw()
this.state = {
activate: activateCanvas
}
}
...
activateCanvas.getContext('2d') 行返回错误,说 getContext 不是函数。
我想知道为什么这里的 activateCanvas 不是 Element 对象。我是否必须等到元素被渲染并调用类似 document.getElementById() 的东西才能使用 getContext()?谢谢
【问题讨论】:
-
你实际上应该做的是创建一个引用,将该引用分配给画布,然后在使用时使用
ref.current.getContext('2d')。
标签: javascript html reactjs jsx