var that;
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    previewImgList: {
      type: Array,
      value: false
    },
    previewImg: {
      type: null,
      value: false
    },
  },
  attached: function () {
    that = this;
  },
  /**
   * 组件的初始数据
   */
  data: {
    preview_box_top: 0,
    left: '0px;',
    touchS: [0, 0],
    touchE: [0, 0],
    index: 0,
    imgindex:0,
    previewHideStatus:false,
    scale: 1,
    scaleObj:{
      scale:1,
      x:0,
      y:0,
      yes:true
    },
    touchStartTime: 0,   // 触摸开始时间
    touchEndTime: 0,     // 触摸结束时间
    lastTapTime: 0,  // 最后一次单击事件点击发生时间
    lastTapTimeoutFunc: null, // 单击事件点击后要触发的函数
  },
  /**
   * 组件的方法列表
   */
  methods: {
    jingzhi(e) { 
      let diffTouch = this.data.touchEndTime - this.data.touchStartTime;
      let curTime = e.timeStamp;
      let lastTime = this.data.lastTapDiffTime;
      this.data.lastTapDiffTime = curTime;

      this.setData({previewHideStatus: false,preview_box_top: '100%' })

      //两次点击间隔小于300ms, 认为是双击
    //   let diff = curTime - lastTime;
    //   if (diff < 300) {
    //     console.log("double tap")
    //     clearTimeout(this.data.lastTapTimeoutFunc); // 成功触发双击事件时，取消单击事件的执行
    //     if(this.data.scale == 1){
    //         this.setData({
    //         scale:2
    //       })
    //     }else{
    //       this.setData({
    //         scale:1
    //       })
    //     }
    //   } else {
    //     this.data.lastTapTimeoutFunc = setTimeout(function () {
    //       console.log("single tap")
    //       if(that.data.scaleObj.yes){
    //         that.setData({previewHideStatus: false })
    //         console.log('运行了');
    //       }
    //     }, 300);
    //   }
    },
    configqxClick(e) { this.setData({ scopeWritePhotosAlbum: e.detail }) },
    touchStart: function (e) {
      this.data.touchStartTime = e.timeStamp //时间点
      let sx = e.touches[0].pageX
      let sy = e.touches[0].pageY
      this.data.touchS = [sx, sy];
    },
    touchMove: function (e) {
      let start = this.data.touchS;
      let sx = e.touches[0].pageX;
      let sy = e.touches[0].pageY;
      this.data.touchE = [sx, sy];
    },
    touchEnd: function (e) {
      this.data.touchEndTime = e.timeStamp //时间点
      let start = this.data.touchS
      let end = this.data.touchE
      let scaleObj = this.data.scaleObj
      //如果((start[0] < end[0] - 50) && (scaleObj.scale==1&&scaleObj.x==0&&scaleObj.y==0)) //左滑动
      //如果((start[0] > end[0] + 50) && (scaleObj.scale==1&&scaleObj.x==0&&scaleObj.y==0)) //右滑动
      if(scaleObj.yes){
        if(end[0] == 0){
          console.log('点击')
        }else if((start[0] < end[0] - 50) && (scaleObj.scale==1&&scaleObj.x==0&&scaleObj.y==0)){
          if (this.data.index !== 0) {
            this.data.index -= 1;
            this.data.imgindex -=1;
            this.setData({ index: this.data.index, left: '-' + this.data.index + '00%;transition: all .5s;', imgindex: this.data.imgindex });
          }
        }else if((start[0] > end[0] + 50) && (scaleObj.scale==1&&scaleObj.x==0&&scaleObj.y==0)){
          if (this.data.index !== this.data.previewImgList.length - 1) {
            this.data.index += 1;
            this.data.imgindex += 1;
            this.setData({ index: this.data.index, left: '-' + this.data.index + '00%;transition: all .5s;', imgindex: this.data.imgindex });
          }
        }else{
          console.log('下滑/上滑');
          this.setData({ preview_box_top: '100%' })
        }
        this.data.touchE = [0, 0];
      }

      setTimeout(()=>{
        if(this.data.scaleObj.x == 0 && this.data.scaleObj.y == 0 && this.data.scaleObj.scale == 1){
          console.log('yes is true');
          this.data.scaleObj.yes = true;
        }
      },500)
    },
    showPreview() {
      this.setData({ previewHideStatus: true, preview_box_top: 0 })
    },
    hidePreview() {
      this.setData({ previewHideStatus: false, preview_box_top: 0 })
    },
    onScale(e) {
      this.data.scaleObj = {
        scale:e.detail.scale,
        x:e.detail.x,
        y:e.detail.y,
        yes:false
      }
    },
    stopPageScroll() { return },
  },
  observers: {
    'previewImgList': function (arr) {
      console.log(arr)
    },
    'previewImg':function(img){
      this.data.previewImgList.map((item,index)=>{
        if(item == img){
          let imgindex = index;
          imgindex+=1;
          this.setData({ index: index, imgindex: imgindex, left: '-'+index+'00%;' })
        }
      })
    }
  },
})
