React Native 不受控制的组件如何管理其状态?

问题描述 投票:0回答:1

这些组件是否使用引用作为状态?当我们更新组件ref时,我们是否直接更新DOM?当我们更新组件的引用时,组件是否会渲染并在屏幕上显示值或更改?如果我在组件中创建内部状态 (useState),但不更新该状态,组件是否仍受控制?

javascript react-native components react-dom
1个回答
0
投票

RN 使用原生平台自己的状态管理机制来处理不受控制的组件。这就是它的工作原理

沟通桥梁:

React Native 使用 JavaScript 桥与原生 UI 组件进行通信 不受控制的组件维护自己的状态,因此 JS 端保留对该组件的引用,但不直接控制其整个状态

平台特定状态:

在 iOS (UIKit) 上: 使用本机响应程序链和视图状态管理

Android(Android View 系统): 使用视图状态和属性跟踪

so in short answer to you quesition is no RN donest use the useRef for uncorllled elemetn and its statemanage is more complex the waht we thing it use the react tags and Each component gets a unique reactTag. acts as an internal identifier across JS and native layers

此行为可能已发生变化,您可以在此处阅读更多相关信息: React 18 中的新 Suspense SSR 架构文档受控与非受控组件设计模式

据我所知,我还没有发现任何有趣的事情,作为消费者,我们不需要担心。只要知道如何使用就足够了。但是,如果您确实想深入研究,可以探索其源代码。不幸的是,我遇到的文章或视频中没有足够的关于此主题的详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.