React Native-setState和setNativeProps有什么区别?

时间:2018-11-26 08:53:07

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

我想防止重新渲染整个树,因此,我想在需要时使用setNativeProps更新特定组件,但是setNativeProps不适用于所有组件。我在本机应用程序中同时使用setStatesetNativePropssetState适用于所有组件,但setNativeProps不适用于所有组件。

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

1 个答案:

答案 0 :(得分:1)

React-Native文档对此进行了很好的解释:

  

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

检查this link 以供参考

  

在频繁重新渲染会产生性能瓶颈时使用setNativeProps

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

相关问题