收藏
回答

如何在事件中取消对Slider的滑动修改

问题模块
API和组件

我希望在slider组件的`bindchange`事件中,对`e.detail.value`做进一步验证,如何滑动值不符合要求,则取消对slider的滑动变更。

虽然我知道可以在SetData中添加maxVal进行上限控制,但我的需求就是在bindchange中检查,按字面意思bindchange是表示已变化,是否存在bindchangebefore事件,或者其他事件来实现取消slider的滑动变更。

谢谢。

```html

  <slider min="0" max="{{maxVal}}" step="0.5" value="{{selected}}" show-value bindchange="bindSelectedChange"></slider> 

```


最后一次编辑于  2017-05-22  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

4 个回答

  • maq
    maq
    2017-05-23

    支持!感觉现在这个 slider 功能的确有点弱,比如我想在滑动过程中随时显示数值的变化,貌似就没有什么好办法。

    2017-05-23
    赞同
    回复
  • LastLeaf
    LastLeaf
    2017-05-23

    感谢反馈。对于小程序的所有组件,因为事件回调是异步执行的,所以做不到“取消变更”之类的行为。你可以在bindchange中将非法值设为合法值,这样来实现你的需求。

    2017-05-23
    赞同
    回复
  • maq
    maq
    2017-05-23

    @LastLeaf: 那在拖拽过程中随时显示数值的变化,这个可以支持吧?比如添加一个 bindchanging 什么的。

    2017-05-23
    赞同
    回复
  • LastLeaf
    LastLeaf
    2017-05-23

    好的。这个已经在计划之中了。

    2017-05-23
    赞同
    回复