高阶组件简介

Posted eret9616

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高阶组件简介相关的知识,希望对你有一定的参考价值。

组件:
class Hello extends React.Component{

render(){
return <h2>hello imooc i love react&redux</h2>
}

}

组件本质其实就是一个函数。

高阶组件:

function WrapperHello(Comp){

class WrapComp extends React.Component{

render(){

return(
<div>
<p>这是高阶组件特有的元素</p>
<Comp {...this.props}></Comp>
</div>
)
}

}
return WrapComp

}

Hello = WrapperHello(Hello)


==================================

以上的写法等同于

function WrapperHello(Comp){

class WrapComp extends React.Component{

render(){

return(
<div>
<p>这是高阶组件特有的元素</p>
<Comp {...this.props}></Comp>
</div>
)
}

}
return WrapComp

}

 

@WraperHello
class Hello extends React.Component{

render(){
return <h2>hello imooc i love react&redux</h2>
}

}

//装饰器

 


高阶组件:给一个组件,返回另一个组件


主要有两种功能:
1.属性代理

包裹后加一些元素或属性


2.反向继承


//可以改写生命周期,修改渲染的逻辑和流程
function WrapperHello(Comp){

class WrapComp extends Comp{

componentDidMount(){
console.log(‘高阶组件新增的生命周期,加载完成‘)
}
render(){

 

}
}

}




































以上是关于高阶组件简介的主要内容,如果未能解决你的问题,请参考以下文章

高阶组件

React的高阶组件详解

高阶组件 知识点,什么是高阶组件?

高阶组件&&高阶函数

react高阶组件

如何让vscode支持react高阶组件写法