微信小程序 长按保存图片

小程序没找到长按识别二维码的功能,只能用这种先保存图片,再去扫一扫的形式。

<image src="../../assets/images/list0.png" bindtouchstart='timestart' bindtouchend='timeend' bindtap='saveImg'></image>
<view>1、长按保存二维码图片</view>
<view>2、打开微信扫一扫,选择相册图片</view>
//点击开始的时间  
  timestart: function (e) {
      var _this = this;
      _this.setData({ timestart: e.timeStamp });
  },
  //点击结束的时间
  timeend: function (e) {
      var _this = this;
      _this.setData({ timeend: e.timeStamp });
  },

  //保存图片
  saveImg: function (e) {
      var _this = this;
      var times = _this.data.timeend - _this.data.timestart;
      if (times > 300) {
      console.log("长按");
      wx.getSetting({
        success: function (res) {
          wx.authorize({
            scope: 'scope.writePhotosAlbum',
            success: function (res) {
              console.log("授权成功");
              var imgUrl = "http://shareds.oss-cn-hangzhou.aliyuncs.com/exhibit/20180815/tmp_35d425e6e732ba516f2e8c9988706eba.jpg";
              wx.downloadFile({//下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径
                url: imgUrl,
                success: function (res) {
                  // 下载成功后再保存到本地
                  wx.saveImageToPhotosAlbum({
                    filePath: res.tempFilePath,//返回的临时文件路径,下载后的文件会存储到一个临时文件
                    success: function (res) {
                      wx.showToast({
                        title: '成功保存到相册',
                        icon: 'success'
                      })
                    }
                  })
                }
              })
            }
          })
        }
      })
    }
  },
 
原文地址:https://www.cnblogs.com/xiao-ling-zi/p/9511041.html