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