收藏
回答

定义滑动组件的问题

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 客户端 最新 2.7.7

- 当前 Bug 的表现(可附上截图)


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

----------------------------------------------------------------------------------------------------

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








最后一次编辑于  2019-07-29
回答关注问题邀请回答
收藏

2 个回答

  • ABao
    ABao
    2019-07-29
    //记录开始的位置
        _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.


    2019-07-29
    有用
    回复 2
    • 卢霄霄
      卢霄霄
      2019-07-29

      你这个Move并没有和列表关联,那不是一滑所有的都变了吗?还是说这个是在组件内部触发的?

      能不能做成代码片段啊?光看这段还是没法判断出来。。代码片段做法如下

      https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html


      2019-07-29
      回复
    • ABao
      ABao
      2019-07-29
      哦哦,我在研究研究,我想的也是一滑动应该就是所有item都滑动,但是结果是只有最后一个item在滑动。
      2019-07-29
      回复
  • 卢霄霄
    卢霄霄
    2019-07-29

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

    2019-07-29
    有用
    回复
登录 后发表内容