微信小程序开发,重复扫码的处理

问题描述:

微信小程序开发,对同一个二维码进行扫码,在后端添加了多条重复数据

解决办法:

将上一次扫码结果和本次扫码结果进行对比,若相同则给出提示,若不同则进行接口请求

lastScanResult: '', // 用于存储上一次扫码的结果
isScanning: false, // 标记是否正在扫码


scanCode() {
    var that = this;
    // 如果正在扫码,则不执行新的扫码操作
    if (that.data.isScanning) {
      wx.showToast({
        title: '正在扫码,请稍等',
        icon: 'none',
        duration: 2000
      });
      return;
    }
    // 正在扫码
    that.setData({ isScanning: true });
    wx.scanCode({
      success: function(res) {
        //  获取本次扫码结果
        var currentScanResult = res.result;
        // 对比当前扫码结果是否与上一次相同
        if (currentScanResult === that.data.lastScanResult) {
          // 相同:给出提示
          wx.showToast({
            title: '扫码结果与上一次相同,请稍后再试',
            icon: 'none',
            duration: 2000
          });
        } else {
          // 不同:更新扫码结果
          that.setData({ lastScanResult: currentScanResult });
          // 在这里处理扫码结果,进行逻辑业务处理
         //   .....................

          // 标记扫码结束
          that.setData({ isScanning: false });
        }
      },
      fail: function() {
        // 扫码失败的处理
        wx.showToast({
          title: '扫码失败,请重试',
          icon: 'none',
          duration: 2000
        });
        // 标记扫码结束
        that.setData({ isScanning: false });
      }
    });
  },
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容