Reactjs 使用propTypes时功能反应组件与反应组件
React 0.14引入纯函数作为组件,如下所示:Reactjs 使用propTypes时功能反应组件与反应组件,reactjs,Reactjs,React 0.14引入纯函数作为组件,如下所示: export const Label = ({title} => ( <span>{label}</span> ) class Label extends React.Component { static propTypes = {} static defaultProps = { title: "unknown" } render() { <span>{th
export const Label = ({title} => (
<span>{label}</span>
)
class Label extends React.Component {
static propTypes = {}
static defaultProps = {
title: "unknown"
}
render() {
<span>{this.props.label}</span>
}
}
我也可以使用React.Component
如下:
export const Label = ({title} => (
<span>{label}</span>
)
class Label extends React.Component {
static propTypes = {}
static defaultProps = {
title: "unknown"
}
render() {
<span>{this.props.label}</span>
}
}
类标签扩展了React.Component{
静态propTypes={}
静态defaultProps={
标题:“未知”
}
render(){
{this.props.label}
}
}
一切都将立即可见,组件也可以理解
那么我们为什么要使用功能组件呢?没有必要使用纯功能组件,创建它们的原因是为了方便创建无状态功能组件,而无需扩展组件类。本文详细解释了这一点 没有必要使用纯功能组件,创建它们的原因是为了方便创建无状态功能组件,而无需扩展组件类。本文详细解释了这一点 即使在您的情况下,我也看到了使用功能组件的原因:
- 在组件规模上没有ES6或React magic,因此输出JS要短得多
- 更干净的分离。您有一个返回表示组件的函数。像默认道具这样的“元数据”就像ES6组件一样被分开
- 如文档中所述,React希望对功能组件进行特殊优化,以便将来使用它们比使用常规组件更好地用于演示目的:
即使在您的情况下,我也看到了使用功能组件的原因:
- 在组件规模上没有ES6或React magic,因此输出JS要短得多
- 更干净的分离。您有一个返回表示组件的函数。像默认道具这样的“元数据”就像ES6组件一样被分开
- 如文档中所述,React希望对功能组件进行特殊优化,以便将来使用它们比使用常规组件更好地用于演示目的:
尤其是优化步骤(代码大小和运行时加速)和更干净的代码(无反应魔法)让我信服!尤其是优化步骤(代码大小和运行时加速)和更干净的代码(无反应魔法)让我信服!