为了账号安全,请及时绑定邮箱和手机立即绑定

在componentDidUpdate中设置img.src不能触发img.onload事件回调

在componentDidUpdate中设置img.src不能触发img.onload事件回调

GCT1015 2018-10-24 11:04:25
componentDidUpdate(prevProps, prevState, snapImg){    if(this.props.bookImg!=null && this.props.bookImg!==prevProps.bookImg){        var canvas= document.createElement('canvas');        var ctx= canvas.getContext('2d');        var img= new Image();         img.crossOrigin= 'Anonymous';        var dataURL;         img.onload=function() {            console.log('fn');             ctx.drawImage(img, 0, 0);             dataURL= canvas.toDataURL("image/jpeg");            console.log(dataURL);         }         img.src=this.props.bookImg;        console.log('end');     } }这段代码,我在<script>标签内测试时是有效的,但用在componentDidUpdate里img.onload的回调不能触发;有谁知道为什么吗?
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

初始化第一次渲染这个生命周期是不会执行的, 因此应该不是onload不执行,是整个都不执行吧?

如果不是第一次渲染的情况的话, 那就需要你贴一下你的script中写的可行的代码来分析了


查看完整回答
反对 回复 2018-10-24
  • 1 回答
  • 0 关注
  • 986 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信