image标签动态赋值图片全部变黑?
发布于 6 年前 作者 gang41 5058 次浏览 来自 问答

需求是用户手签,在合同下面显示出来,我在画布页面将图片上传服务器后,返回合同页面并在onshow内setData更新图片的src,出现图片变黑的问题,IOS真机与小程序模拟器没事,安卓真机出现黑配。

尝试过setTimeout()延迟2秒执行返回页面,延迟执行setData,都不行。

代码:

合同页面=》

xml:
  <image src="{{flie}}" ></image>
js:
 onShowfunction () {
    this.upLoadImg()
  },
//更新手签
  upLoadImg(){
    var that = this
    wx.getStorage({
      key'UploadImg',
      success (res) {
        that.setData({
          flie: res.data,
        })
      }

手签页面:

 /**导出图片 */
  export: function() {
    const that=this;
    this.data.context.draw(false, wx.canvasToTempFilePath({
      x: 0,
      y: 0,
      width: that.data.width,
      height: that.data.height,
      destWidth: that.data.width,
      destHeight: that.data.height,
      fileType: 'jpg',
      canvasId: 'firstCanvas',
      success(res) {
        var url = "https://shopapi.sdpulei.cn"
        wx.uploadFile({
          url: url + '/Home/UploadImg', 
          filePath: res.tempFilePath,
          name: 'fileToUpload',
          success(res) {
            console.log(JSON.parse(res.data).Msg)
            wx.setStorage({
              key:"UploadImg",
              data: JSON.parse(res.data).Msg,
              success(res){
                wx.navigateBack({
                  delta: 1,
                })
              }
            })
          },
          fail(err) {
            wx.showToast({
              title: '上传失败',
              icon: 'none',
              duration: 2000
            })
          }
        })
      },
      fail() {
        wx.showToast({
          title: '导出失败',
          icon: 'none',
          duration: 2000
        })
      }
    }))
  },
2 回复
this.data.context.draw(false,()=>{
 //....
})

里面应该是这样的吧 不知道你的页面内 图片到底生成了没有

图片地址是https,跪求大佬~~

回到顶部