react-mouse-handler
React 鼠标事件处理组件,通过这个高阶组件封装后,子组件具备光标样式设置(cursor
)、鼠标事件回调(onMouseOver
、onMouseMove
、onMouseDown
、onMouseUp
、onMouseOut
、onClick
、onDragStar
、onDrag
、onDragEnd
),在回调函数中可以拿到鼠标位置数据(localX
、localY
、globalX
、globalY
、dx
、dy
)
install
npm install react-mouse-handler --save-dev
demo
自定义组件:
// MyComponent.js import ReactComponent from "react";import mouseHandler from "react-mouse-handler"; { return <p>thispropschildren</p>; }MyComponent = ; // 使用高阶组件封装 MyComponent;
在 index.js
中使用刚刚封装的 MyComponent
// index.js import ReactDOM from "react-dom";import ReactComponent from "react"; { return <div> <p>App</p> <MyComponent ="help" // 鼠标经过组件时,光标会变成 样式 = // 鼠标拖拽(按下并离开)组件时,光标样式保持不变 = = = = = >help</MyComponent> </div> }ReactDOM;
update
版本 | 更新内容 |
---|---|
0.4.4 | 渲染规则:如果高阶组件传入children ,就将原始组件的children 覆盖。 |
0.4.3 | 1、接口变更为:mouseHandler(canDrag:boolean, cursor:string)(MyComponent) 2、提供 MouseContainer 组件。3、修复 bug。 |
0.4.2 | 修复重绘组件的 bug。 |
0.4.1 | 修复组件卸载后,鼠标样式未还原的 bug。 |
0.4.0 | 修复 style 被覆盖的 bug。 |
0.3.0 | 1、新增 onClick 、onDragStart 、onDrag 、onDrangEnd 回调。2、优化性能。 |