我正在使用反应颜色。它提供了两个内置事件:onChange
和onChangeComplete
。
onChange
在操作拾色器时实时触发,而onChangeComplete
仅在静止不动时才触发。
但是,对于我来说,onChangeComplete
仍然会频繁触发,因为它似乎有很短的超时时间(例如500毫秒左右),不仅是在释放鼠标按钮时。
我需要一个事件来真正完成选色并将其发送给所有需要了解它的组件。这就是用户释放鼠标按钮的时间。
<SketchPicker
onChange={(color) => { //fires all the time as it should
handleChange(color);
}}
onChangeComplete={(color) => { //fires when stopping mouse movement for a short time
handleChangeComplete(color); //Ok for setting local component state variables
}}
onMouseUp={(color) => { //not firing at all
handleFinalChange(color); //supposed to run, when the user released mouse to promote it to React
}}
/>
onMouseUp
应该是React提供的事件,它可以在普通div中工作,但由于某些原因,不能在此包提供的组件中使用。如何在此处向组件添加自定义事件?
答案 0 :(得分:2)
您可以将库组件包装在div
中并绑定onMouseUp
,或者您需要修改该库的源代码。