因为官方的 slider 只有横向的,所以按照官方的slider写了个纵向的,用 wxs 处理的事件(出了这么久了,却没有怎么用过。。)。代码片段如下
没什么难点,本来想着几行就写完了。。意料之外的多了些代码。。主要有几点想吐槽的
- wxs 里的getState是用来存公共临时变量的。为什么不直接在 wxs里定义一个变量呢?因为如果有多个组件的话,这些变量会共享。另外还要注意下面的情况
var state = getState()
state.value = 1 // 正确
state = {value: 1} // 错误
- 点击事件是加到线条上的,线条本身太窄了,加了padding扩大点。另外,头尾两个位置应该是用户最常用的点击,但是却不怎么好点到,甚至根本点不到,所以在两头各加了2个view来直接设置最大最小值。
- 想点着圆点滑动的时候,偶尔会点到滚动条上,结果造成页面滑动,所以在最外面加了 touchmove 绑定了空方法。
- 为什么这个组件需要有 show-value 的配置。。感觉特别鸡肋。。
早先发到群里的那一版不太好,没优化,而且value的设置忘了减去 min了。。哈哈哈。。抱歉。。
哈哈哈你好棒
也是个人才,有没有时间把左滑删除的也写成 wxs 的
666
哈哈,说得对