相关疑难解决方法(0)

反应功能无状态组件,PureComponent,Component; 有什么区别,什么时候应该使用什么?

才知道,从阵营v15.3.0,我们有一个新的名为基类PureComponent与扩展PureRenderMixin内置.我所理解的是,在引擎盖下,它采用了内部道具的浅层比较shouldComponentUpdate.

现在我们有3种方法来定义React组件:

  1. 功能无状态组件,不扩展任何类
  2. 扩展PureComponent类的组件
  3. 扩展Component类的普通组件

一段时间后,我们习惯将无状态组件称为纯组件,甚至是哑组件.似乎"纯"这个词的整个定义现在在React中已经改变了.

虽然我理解这三者之间的基本差异,但我仍然不确定何时选择什么.还有什么是性能影响和权衡取舍?


更新:

这些是我希望澄清的问题:

  • 我应该选择将我的简单组件定义为功能(为简单起见)还是扩展PureComponent类(为了性能)?
  • 性能提升是否因为我丢失的简单性而得到了真正的平衡?
  • Component当我总能使用PureComponent以获得更好的性能时,我是否需要扩展普通类?

javascript ecmascript-6 reactjs

181
推荐指数
3
解决办法
4万
查看次数

道具验证中缺少React Navigation'navigation'

React Navigation的介绍页面建议使用以下解构分配:

const { navigate } = this.props.navigation;
Run Code Online (Sandbox Code Playgroud)

但是,当我在我的应用程序中实现React Navigation时,ESLint抱怨此行描述了这两个错误:

道具验证(反应/道具类型)中缺少"导航"

道具验证(react/prop-types)中缺少'navigation.navigation'

即使应用程序似乎按预期工作,如何删除这些错误行?

javascript react-native react-navigation

11
推荐指数
4
解决办法
8745
查看次数