收藏
回答

把图片导入2d画布出现问题?

const app = getApp()

Page({
  data: {},

  onLoad: function () {

    // 通过 SelectorQuery 获取 Canvas 节点
    wx.createSelectorQuery()
      .select('#canvas')
      .fields({
        node: true,
        size: true,
      })
      .exec(this.init.bind(this))
  },

  init(res) {
    const ctx = canvas.getContext('2d')
    this.drawCar(ctx)
    const img = canvas.createImage()
    img.onload = () => {
      this._img = img
    }
    img.src = './car.png'
  },

  drawCar(ctx) {
    ctx.drawImage(this._img, 0, 0, 100, 50)
    ctx.restore()
  }
})

回答关注问题邀请回答
收藏

1 个回答

  • 6666
    6666
    2020-03-23

    遇到了同样的问题,然后我是在img.onload的函数里使用的ctx.drawImage

    2020-03-23
    有用 1
    回复 2
    • 无说
      无说
      2020-03-23
      真的可以了,为啥呀,
      2020-03-23
      回复
    • 6666
      6666
      2020-03-23回复无说
      我是感觉img.onload方法是异步的,所以会先执行this.drawCar,然后再执行onload方法。就在onload的方法里写了,不知道符不符合规范。有好的方法后告诉我一下。
      2020-03-23
      回复
登录 后发表内容
问题标签