我正在设计Angular 4 app的架构。该应用程序将由两组用户使用:"最终用户"和" admin"。
我不想将代码拆分为两个独立的应用程序,因为管理员也需要为最终用户提供许多类(例如,预览更改)。另一方面,最终用户不需要管理员类。
当然,我不想将管理员脚本发送给最终用户。所以我想要有两个构建计划:完整和减少。这是我对解决方案的看法,其他解决方案可能会更好。
让我总结一下问题:我需要一种方法来为最终用户单独捆绑代码。但是,由于共享代码,我不想为用户和管理员设置两个单独的项目。
你会建议做什么?
答案 0 :(得分:2)
我建议将您的应用分为2个功能模块,并使用lazyModules的概念和功能模块的概念。
只有在到达路由器时,使用LazyModules才会加载模块。如果您的用户是管理员或只是用户,您可以使用警卫来控制使用服务。有关守卫的更多信息。