鍍金池/ 問答/HTML/ 微信小程序canvas.clip編輯器運(yùn)行沒有報錯,真機(jī)運(yùn)行報錯

微信小程序canvas.clip編輯器運(yùn)行沒有報錯,真機(jī)運(yùn)行報錯

toPhoto: function () {
    const ctx = wx.createCanvasContext('myCanvas');
    var that = this;
    wx.chooseImage({
      count: 1, // 默認(rèn)9
      sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認(rèn)二者都有
      sourceType: ['album', 'camera'], // 可以指定來源是相冊還是相機(jī),默認(rèn)二者都有
      success: function (res) {
        that.setData({
          isMod: false,
          isCut: true,
          bgColor: "black",
          tempFilePaths:res.tempFilePaths[0]
        })
        var tempFilePaths = res.tempFilePaths[0];
        wx.getSystemInfo({
          success: function (res) {
            that.setData({
              width: res.windowWidth,
              height: res.windowHeight,
              lastX: res.windowWidth * 0.23,
              lastY: 0
            })
          }
        })
        ctx.save()
        ctx.beginPath()
        ctx.setFillStyle('white');
        ctx.fillRect(that.data.width * 0.1, 30, that.data.width * 0.8, that.data.height * 0.3);
        ctx.clip();
        ctx.drawImage(that.data.tempFilePaths, that.data.width * 0.23, 0, 200, 300)
        ctx.restore()
        ctx.draw();
      }
    })
  },

圖片描述

回答
編輯回答
安若晴

可能是因?yàn)槲⑿虐姹镜?/p>

canvasContext.clip

基礎(chǔ)庫 1.6.0 開始支持,低版本需做兼容處理

app.jsonLaunch里,這是我用來檢查版本的代碼:

wx.getSystemInfo({
    success: function (res) {
        // check sdk version
        console.log('SDKVersion:' + res.SDKVersion)
        if (res.SDKVersion < '1.6.0') {
            wx.showModal({
                title: '提示',
                showCancel: false,
                content: '當(dāng)前微信版本過低,無法使用某些功能,請升級到最新微信版本后重試。'
            })
        }
    },
})

看看是不是因?yàn)槟阄⑿盘脹]更新了。
2017年3月23日 18:03