定义滑动组件的问题
发布于 5 年前 作者 leizhou 4184 次浏览 来自 官方Issues
  • 当前 Bug 的表现(可附上截图)

我自定义了一个滑动message组件,向左滑动后可以弹出“标记为已读”和“删除”按钮,但是在页面中使用的时候,对其他message滑动,结果都是最后一个message出现按钮!不知道是咋回事。


问题已经得到解决了,是因为我使用了catchtap造成的。

2 回复
//记录开始的位置
    _TouchStart: function(e){
      console.log("component:item-message.js----------------------------------------------->_TouchStart");
      console.log(e)
      that.setData({ TouchStart: e.touches[0].pageX})
 
    },
 
    //touchmove
    _TouchMove: function(e){
 
      that.setData({
        TouchDirection: that.data.TouchStart - e.touches[0].pageX > 0 ? "left" : "right"
      });
 
    },
 
    //touchend
    _TouchEnd: function(e){
      console.log("component:item-message.js----------------------------------------------->_TouchEnd");
      console.log(e)
      if(that.data.TouchDirection=="left"){
        that.setData({Move: "move-cur", TouchStart: 0})
      }else{
        that.setData({ Move: "", TouchStart: 0})
      }
       
    }

这是代码片段,逻辑很简单,就是判断用户是否向左滑动,如果是,就在message里面添加一个move-cur的css类,让message向左偏移320rpx.

猜不准。。不如。。来个代码片段吧

回到顶部