收藏
回答

canvasContext.draw回调函数不执行是为什么



求解答 感谢!!!

最后一次编辑于  2018-09-11
回答关注问题邀请回答
收藏

2 个回答

  • Yuan
    Yuan
    10-10

    我的也是这样死活不执行

    10-10
    赞同
    回复 1
    • Yuan
      Yuan
      10-10
      有没有什么办法可以解决的?
      10-10
      回复
  • 张子浩
    张子浩
    2018-09-11

    context.draw 的第二个参数直接传入一个 function() {} 的话,function() {} 内部的 this 的指向不一定是当前页面实例。

    所以可以先把 function() {} 改为

    function() {
     
        console.log('看看这句话执行没')
     
        this.setData({
     
            canvasComplate: true,
     
        })
     
    }


    先看看这句 Log 执行没有,如果执行了,则改成

    context.draw(false, () => {
     
        this.setData({
     
            canvasComplate: true,
     
        })
     
    })


    应该就可以了。

    2018-09-11
    赞同
    回复 6
    • Mr.yl
      Mr.yl
      2018-09-11

      不是这个的问题  我在里面写的console也打印不出来

      2018-09-11
      回复
    • 张子浩
      张子浩
      2018-09-11

      那就不知道了,你可以贴下完整的代码片段。


      2018-09-11
      回复
    • 张子浩
      张子浩
      2018-09-11回复Mr.yl

      这是拷贝你源码做的代码片段  wechatide://minicode/y9HxFlmG7t22

      你看下, 111 已经打印了。



      2018-09-11
      回复
    • Mr.yl
      Mr.yl
      2018-09-11回复张子浩

      看了下你的这个代码片段就可以  我的就死活不行

      2018-09-11
      回复
    • 张子浩
      张子浩
      2018-09-11回复Mr.yl

      是不是 canvas 宽高不对啊,仔细检查下吧,不行就拷贝过去呗

      2018-09-11
      回复
    查看更多(1)