收藏
回答

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



求解答 感谢!!!

最后一次编辑于  2018-09-11  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

7 个回答

  • 张子浩
    张子浩
    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
    • 曦悦灿荣
      曦悦灿荣
      2018-09-11

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

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

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


      2018-09-11
      赞同
      回复
    • 张子浩
      张子浩
      2018-09-11回复曦悦灿荣

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

      你看下, 111 已经打印了。



      2018-09-11
      赞同
      回复
    • 曦悦灿荣
      曦悦灿荣
      2018-09-11回复张子浩

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

      2018-09-11
      赞同
      回复
    • 张子浩
      张子浩
      2018-09-11回复曦悦灿荣

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

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