试图了解React / React本机状态的最佳实践。来自Java世界,我倾向于在应用程序中遵循MVC / MVVM,但是阅读其他方法使我想知道自己是否在正确地设计应用程序。
前提:
- 主要用于消费视频和音频内容,存储用户统计信息和进度的应用
从invertase.io - 反应本机Firebase
- Redux 用于存储 Firebase实时数据库
中的数据结构
我目前的做法:
- 如果React组件需要数据,则可以通过Redux或通过props来获取父组件。
- 如果组件需要处理/获取更多数据,我可以在组件中访问单独的viewmodel类(不依赖于React / RN的Typescript文件)。
- 如果viewmodel从某个地方获取新数据,则组件状态通过实现接口通过Observer模式获取它
- 如果需要将数据持久存储到Redux和/或Firebase,则视图模型会执行此操作。我从组件传递了存储对象
我阅读/听到/讨论过的方法:
- 所有来自组件的数据/通过Redux接收/发送
- 所有数据操作均在Redux Actions中完成
- 没有单独的控制器/视图模型
我在React Native上没有太多的历史,所以我试图了解后一种方法是否由于某些原因实际上是优越的。