看了微信开放文档中对于switch只有切换功能,并不能在切换前进行验证,但是我们经常会遇到这种场景,在切换前需要让用户二次确认是否切换,那么该如何解决呢
思路:在switch组件外包一层父元素,把切换事件绑定在父元素身上,但是当点击时,用取消事件捕获的办法阻止switch的触发,也就是事件并不会走到子元素,当验证通过后,再更改switch的checked值
代码如下
<view capture-catch:tap="switchChange">
<switch checked="{{switchChecked}}" />
</view>