1捻勉、創(chuàng)建PropsRender組件泰佳,代碼如下:
import React from 'react'
export default class PropsRender extends React.Component {
????state = {
????????x: 0,
????????y: 0
????}
????moveMouse = ?e => {
????????this.setState({
? ? ? ? ????x: e.clientX,
????????????y: e.clientY
????????})
????}
????componentDidMount() {
????????window.addEventListener('mousemove', this.moveMouse)
????}
????componentWillUnmount() {
????????window.removeEventListener('mousemove', this.moveMouse)
????}
????render() {
????????return this.props.render(this.state)?
? ? }
}
2、組件運用
import React from 'react'
import PropsRender from './components/move-mouse/PropsRender'
function App() {
????return (
????????<div className="App">
? ? ? ? ????<PropsRender render={
????????????????move => {
????????????????????return (<p>鼠標當前坐標:{move.x}忘巧,{move.y}</p>)
????????????????}
????????????}></PropsRender>
? ? )
}
export default App