欢迎访问我的博客,目前从事Machine Learning,欢迎交流

CanvasRenderingContext2D.drawImage()无效,not working

我的技术框架:react,如若不采用堵塞方式,即,
const myimg = await loadImage(icon28)
ctx.drawImage(myimg,0,0, 100, 100)
 
而用.then(),如下,
 
loadImage(icon28).then((image) => {
    ctx.drawImage(image,0,0, 100, 100)
})

 

 
在then里写ctx. drawImage在图上会显示不了,原因是我用了以下的图片展示方式:
 const be64 = canvas.toDataURL('image/png')
        this.setState({
            be64
        })
 
其中,be64赋值给一个<img />标签,当你异步图片加载完后,虽然你画在画布上是有图片的,但是由于没有再次触发 this.setState ,因此,canvas的内容没有第二次渲染到页面上。要是使用堵塞后,在 加载之前都没有进行setState,因此就不会有问题
posted @ 2019-09-03 18:20  有蚊子  阅读(1116)  评论(0编辑  收藏  举报