反应本机应用程序架构以包括基于角色的屏幕

react native application architecture to include role based screens

我正在尝试开发一个 RN 应用程序,它会根据登录用户的角色包含不同的屏幕。

应用程序将有 4-5 个角色,每个角色本身就像一个完整的应用程序。

如果我只想将所有这些角色合并到一个应用程序中,我不确定应该采用哪种架构。或者我是否应该为每个角色单独申请?

我认为比角色更重要的是你的角色所承担的实际任务。我会创建一个矩阵来弄清楚哪个角色 requires 哪些任务。然后根据角色矩阵编写任务特定 ui screens/components 和 show/hide。这可能是最合乎逻辑的架构,并促进了面向任务的 ui 组件的重用。想象一下,您的应用程序出现了一个新角色 - 或者一项新任务。对于这两种情况,这种架构很容易 extensible/changeable.

您可以通过为所有角色编写一个应用程序或为每个角色编写一个单独的应用程序来执行此方法 - 您的任务特定模块在任何一种方法中都是可重用的。

关于使用 redux 进行状态管理的评论是一个稍微不同的主题,但对于一个相当复杂的应用程序来说,通常是个不错的建议。只需阅读 this 即可更加清晰。