我已经开发了一些 SAPUI5 移动应用程序,我想将它们合并到一个门户(带有磁贴)中,这样我就可以在它们之间切换作为“声誉”。
现在我想知道,实现这个案例的“最佳”方法是什么?
目前应用程序有一个 Controller 和 View 。我的第一个想法是构建一个“门户应用程序”,其中包括具有自己 Controller 的其他应用程序的所有 View ,但后来我注意到性能下降了(因为所有资源(OData 模型等)在启动门户网站时加载-应用程序)。
我也尝试将它们链接起来(都带有它们自己的 index.html),但这种情况似乎不合适。
那么有没有办法动态加载 View 或整个应用程序,我该怎么做?
最佳答案
首先,SAP官方针对这个问题的解决方案叫做SAP Fiori Launchpad。但是,它的设置要复杂得多(您需要一个包含 SAP Fiori 的底层应用程序服务器。您需要处理用户 Angular 色并将应用程序分配给 Angular 色)。然而,它对灵感很有帮助。 ( Here you can check it )
您可以创建一个单独的组件来保存对其他应用程序的引用。您的应用程序可以从 Tiles 中引用。
我不知道你的应用程序的当前实现,但建议将它们实现为 components (如果 UI 组件具有视觉表示)。
有了组件,您将能够使用路由(在 View 之间导航,甚至使用散列 (url) 的组件),这有助于您正确地管理资源和服务。有了它,您还可以防止不需要的 odata 请求。
这可能是从简单的应用程序架构向前迈出的一大步,但这是值得的。
当然,您可以在没有组件的情况下实现一个简单的应用程序。在这种情况下,您可能会遇到上述性能问题。考虑将数据密集型操作移至事件处理程序中并异步执行这些任务。
关于javascript - SAPUI5/OpenUI5 : More than one app in a portal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35792132/