react-native 自定义滑块,使用`diffClamp`

react-native custom slider, using `diffClamp`

我制作了一个可以看到的自定义滑块here.

问题在于以下代码段

let transX = cond(
  eq(gestureState, State.ACTIVE),
  diffClamp(add(offsetX, dragX), 0, 200),
  set(offsetX, add(offsetX, dragX)),
);

我可以在手势处于活动状态时限制滑块的范围,但我无法在手势完成时设置限制。

我尝试将 diffClamp 添加到 cond 中的 set 方法,但这将旋钮的位置固定在开始位置,并且整个滑块的行为很奇怪。

如有任何帮助,我们将不胜感激。

我在尝试使用 diffClamp 实现类似的东西时遇到了一些问题,其中 diffClamp 不会分配 set 中的节点。我建议使用 minmax.

实现 diffClamp

像这样:

let transX = cond(
  eq(gestureState, State.ACTIVE),
  max(0, min(200, add(offsetX, dragX))),
  set(offsetX, max(0, min(200, add(offsetX, dragX)))),
);