在React里面有两种组件, Class components(类组件) 和 Functional components(函数式组件).二者有明显的区别,好比函数
什么是Functional Components性能
先看一段代码:测试
function Hello(props){ return <div>Hello {props.name}</div> }
这是一个函数式组件(Functional Component), 它和类组件(Class Component)最关键的区别就是: 函数式组件没有state和一系列的钩子函数,这也是函数式组件常常被用做无状态组件的缘由this
若是你比较熟悉ES6语法,还能够这样写:debug
const Hello = ({name}) => <div>Hello {{name}}</div>
两者的做用是彻底一致的code
若是用类组件(Class Components)来实现呢component
class Hello extends Component{ render(){ return <div>Hello {this.props.name}</div> } }
它仅仅包含一个render方法 正如以前所说,若是你的某个组件只有一个render方法,你能够把它转换成类组件(Class Component)生命周期
因此为何要用函数式组件(Functional Components)呢ci
这些状况下不要用函数式组件(Funcional Components)!!!io