收藏
回答

movable-view置disabled时,类名动态增加时位置复原

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug movable-view 工具 6.7.3 2.3.2

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

    movable-view的初始默认x属性为20,disabled为false,然后将movable-view移动到其他位置后,再由undisabled置disabled时,

movable-view的class属性加了一个active类(这个是根本原因),导致movable-view复原

- 预期表现

   movable-view置disabled,父级movable-area的class动态添加类名时位置还原


- 复现路径

    问题一句总结:movable-view被置disabled时,且父级movable-area的class动态添加类名时,movable-view会被复原.


- 提供一个最简复现 Demo

//wtml

<movable-area class="movable-area {{movable.disabled?'active':''}}">

  {{movable.text}}

  <movable-view class="movable-view" bindchange="movableChange" y="0" x="{{movable.position}}" disabled="{{movable.disabled}}" direction="horizontal">

  </movable-view>

</movable-area>


//js

const app = getApp()


Page({

  data: {

    devieceWith: wx.getSystemInfoSync().windowWidth,

    movable: {

      disabled: false,

      position: '',

      text: '拖动滑块验证'

    }

  },

    movableChange(e) {

      console.log(e.detail.x)

      console.log(this.data.devieceWith)

      let _x = e.detail.x;

      let _dis = 'movable.disabled'

      let _pos = 'movable.position'

      let _text = 'movable.text'

      if (_x / 0.8 === this.data.devieceWith) {

        this.setData({

          [_dis]: true,

          [_pos]: e.detail.x,

          [_text]: '验证成功'

        })

    

      }

    }

})

//js



注:代码片段:https://developers.weixin.qq.com/s/oNZ8nUmP7i39


最后一次编辑于  2018-11-14
回答关注问题邀请回答
收藏

3 个回答

  • 晨
    2018-11-12

    麻烦按说明给个代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题

    2018-11-12
    有用
    回复 4
  • 时光如水
    时光如水
    2018-11-12

    目前的解决方案是:

    1-首相将movable-view的animation设置为false;防止第2步出现滑动

    2-然后置disabled时,change监听,将x属性绑定的数据赋值为移动后的位置.

    2018-11-12
    有用
    回复
  • 卢霄霄
    卢霄霄
    2018-11-12

    嗯。。这个组件有点怪。。。移动之后,松手停下来,你要把x,y设上去。。注意不能在 movableChange 里马上设,要延迟一丢丢

    2018-11-12
    有用
    回复 20
    • 时光如水
      时光如水
      2018-11-12

      movableChange 里面设置会乱跳,我单独设置的x ,我试一下将y也设置一下.我用movable-view 做了一个滑块验证..不知前辈有什么好的建议吗?多谢

      2018-11-12
      回复
    • 卢霄霄
      卢霄霄
      2018-11-12回复时光如水

      跟Y倒是无关~ 能做个代码片段吗?要具体看一下才知道怎么处理比较方便。。

      2018-11-12
      回复
    • 时光如水
      时光如水
      2018-11-12回复卢霄霄
      我问题里面那个算是代码片段么?我又重新整理了一下
      2018-11-12
      回复
    • 卢霄霄
      卢霄霄
      2018-11-12回复时光如水

      你看下这个链接。。倒不是不行,只是你以后还会来社区,做代码片段有个好处。。我改了,把我改的片段还给你,你那边也可以验证

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

      2018-11-12
      1
      回复
    • 时光如水
      时光如水
      2018-11-12回复卢霄霄

      https://developers.weixin.qq.com/s/xq0S8SmG7r3Q做好了但是没有问题,我用的mpvue 写的这个组件,可能跟mpvue 有关系...

      2018-11-12
      回复
    查看更多(15)
登录 后发表内容