【发布时间】:2020-09-03 16:10:34
【问题描述】:
类组件是否被废弃?
我看到在几个库中的示例将功能组件作为优先事项。
尤其是 React Navigation。
同样,React 本身与 Hooks 仅使它们可用于函数组件。
主要问题是:为什么功能组件的优先级如此之高?
【问题讨论】:
标签: reactjs react-native react-navigation
类组件是否被废弃?
我看到在几个库中的示例将功能组件作为优先事项。
尤其是 React Navigation。
同样,React 本身与 Hooks 仅使它们可用于函数组件。
主要问题是:为什么功能组件的优先级如此之高?
【问题讨论】:
标签: reactjs react-native react-navigation
不,我认为类组件今天不会被抛弃。也许在未来。
它们不像功能组件那样轻量级,但我在社区中看到很多使用类组件的项目。
但是,我们有一些社区支持Functional Components 方法的原因:
看到这个答案:https://stackoverflow.com/a/49613435/4119452
更多信息:https://www.twilio.com/blog/react-choose-functional-components
【讨论】:
现在,类组件和功能组件几乎相同。在函数式组件中之前没有引入 Hooks,为了等效于类组件,函数式组件获得了新的钩子,如 useState、useRef、useMemo,它们等效于 this.state、React.createRef 和 PureComponent。
此外,类组件上的componentDidUpdate可以用于功能组件上的useEffect。
更多详情请查看 Functional Components vs Class Components in React 和 React JS — Understanding Functional & Class Components
【讨论】:
React 团队目前正在使用 Hooks-first 方法重新构建文档,这应该是所有新功能和应用程序的首选:
将来,类组件是否有可能被弃用?
类组件将在未来几年内出现——例如, Facebook 已经有数以万计的产品在生产。 但是,我们确实建议使用功能构建新应用程序 组件和 Hooks,这就是为什么我们希望这些文档放在前面和 中心。
【讨论】: