02 Use a Render Prop!
Mixins
import React from 'react'
// 可以将样板代码放入到一个 mixin 中,让其他组件共享这些代码
const MouseMixin = {
getInitialState() {
return { x: 0, y: 0 }
},
handleMouseMove(event) {
this.setState({
x: event.clientX,
y: event.clientY
})
}
}
const App = React.createClass({
// 使用 mixin!
mixins: [MouseMixin],
render() {
const { x, y } = this.state
return (
<div onMouseMove={this.handleMouseMove}>
<h1>
The mouse position is ({x}, {y})
</h1>
</div>
)
}
})HOC
Render Props
最后更新于