【问题标题】:React Native - What is the difference between setState & setNativeProps?React Native - setState 和 setNativeProps 有什么区别?
【发布时间】:2019-04-27 21:16:10
【问题描述】:

我想防止重新渲染整个树,所以,我想在需要时使用setNativeProps 更新特定组件,但setNativeProps 不适用于所有组件。我在我的反应原生应用程序中同时使用setStatesetNativePropssetState 适用于所有组件,但 setNativeProps 不适用于所有组件。

setStatesetNativeProps 有什么区别?对于哪些组件setNativeProps 应该和不应该使用?一个小例子将不胜感激。谢谢!!!

【问题讨论】:

标签: javascript reactjs react-native ecmascript-6 jsx


【解决方案1】:

React-Native 文档很好地解释了这一点:

有时需要直接对组件进行更改,而不使用 state/props 来触发整个子树的重新渲染。例如在浏览器中使用 React 时,有时需要直接修改 DOM 节点,移动应用中的视图也是如此。 setNativeProps 是 React Native 等效于直接在 DOM 节点上设置属性。

查看this link 以供参考

在频繁重新渲染造成性能瓶颈时使用 setNativeProps

所以基本上我能看到的唯一用例是当您创建连续动画并且您不想影响应用程序的性能时。 在几乎所有其他情况下, setState 将绰绰有余。 如果您需要控制组件何时重新渲染,请查看 shouldComponentUpdate

【讨论】:

  • shouldComponentUpdate 链接显示 Page Not Found
猜你喜欢
  • 2016-04-11
  • 1970-01-01
  • 2017-01-03
  • 2019-06-21
  • 2019-05-09
  • 1970-01-01
  • 1970-01-01
  • 2019-03-06
相关资源
最近更新 更多