繁体   English   中英

React组件是否需要从React.Component扩展?

[英]Is it necessary for a React component to extend from React.Component?

在React 0.13之后,我们可以使用ES6类来创建类似上面的React组件:

class A extends React.Component {
  // ...
}

但是,如果我偶尔忘记键入extends React.Component ,只要我不使用this.setState()这样的简单方法,组件A仍然对我this.setState()

我开始认为,从React.Component扩展React组件是必要的。

在像FLUX或Redux这样的架构中,有智能的React组件和哑的React组件,智能的组件连接到数据存储,而哑的组件仅从父级接收道具并进行渲染。我已经在React 0.14中知道我们可以简单地为哑写一个纯函数那些。

但是在智能组件中还存在一些差异,即有些组件具有状态而有些则没有。如果类型之间的差异extends React.Component而不仅仅是this.setState()extends React.Component当我的组件extends React.Component时我只是不extends React.Component不需要管理自己的状态。

React组件是否需要从React.Component扩展?

不在React v0.13中,但会在v0.14中

现在,ES6组件类必须扩展React.Component才能启用无状态功能组件。 ES3模块模式将继续起作用。

因此,为了将功能作为简单的无状态组件(如您所提到的)支持,似乎类需要扩展React.Component

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM