函數
,本質上是一個類工廠函數(class factoy)hocFactory:: W: React.Component => E: React.Component
複製代碼
這裏 W(WrappedComponent) 指被包裝的 React.Component,E(Enhanced Component) 指返回的新的高階 React 組件。javascript
可用的地方很是多,下面咱們先來實現一個高階組件前端
function ppHOC(WrappedComponent) {
return class PP extends React.Component {
render() {
return <WrappedComponent {...this.props}/> } } } 複製代碼
能夠看到,這裏高階組件的 render 方法返回了一個 type 爲 WrappedComponent 的 React Element(也就是被包裝的那個組件),咱們把高階組件收到的 props 傳遞給它,所以得名 Props Proxy。java