欢迎回来!
到SAPUI5 Firebase博客系列的最后一个博客(现在)?
希望你喜欢以前的博客,觉得很有趣。既然我们已经到了最后一部分,大数据的前景,当然不是最重要的一部分,我们将把我们的应用程序部署到SAP Fiori Launchpad上。
如果您没有关注以前的博客,您可以在这里找到它们。
SAPUI5 FIREBASE博客系列:
当然我们不会将部署的应用程序的url发送给我们的客户。我们将部署它们,并通过SAP Fiori Launchpad使其可访问。一个门户,我们可以将所有需要和部署的应用程序分组。
这里有一个SAP Fiori启动板上一些部署的应用程序的示例。
所有需要和部署的应用程序都可以在这里获得,并将被打开到应用程序外壳视图容器中。
好的,确信这种向客户公开应用程序的好方法吗?
开始吧!
为了测试我们目前构建的应用程序,我们右键选择我们的项目并选择run。在这里,我们选择"runassapfiori Launchpad Sandbox"选项。这样我们就可以在"虚拟"的Fiori启动板上测试我们的应用程序,好评返现,大数据包括,而不必部署它。
这将导致以下错误:
不是它应该看起来的样子,对吧?
原因:
这是因为Fiori启动板从组件.js而不是从索引.html文件。因为我们从索引.html,它们在应用程序中不可访问。为此,我们需要对以前的实现进行一些调整。
要使我们的UI5 Firebase应用程序在Fiori启动板中工作,我们必须对一些文件进行一些调整,并将一些文件添加到项目中。
我们将进行一些调整的文件:
索引.html清单.json组件.js火基-消息.jsfirebase消息-软件js火基.js
我们将在文件夹'libs'下添加的文件(我们在webapp文件夹下创建):
firebase-应用程序.js火基-firestore.js网站火基-授权.js火基-消息.js
这些文件将移动到文件夹结构中的另一个位置:
firebase消息-软件js
在这里您将看到调整和添加文件和文件夹后项目的结构。我们执行的所有文件、文件夹和调整,在我们项目的webapp文件夹下进行。
在我们的索引.html文件我们删除以下行或将它们放在注释中,以便备份我们一开始的工作方式。
在我们项目的webapp文件夹下,我们添加文件夹"libs"。
在此lib文件夹中,我们添加以下文件:
firebase-应用程序.js火基-firestore.js网站火基-授权.js火基-消息.js
如您所见,对于我们在索引.html文件,我们现在在libs文件夹下创建了一个文件。这个文件的内容非常直接。您可以在浏览器中打开在以前的博客中添加的每个脚本标记的url,并将内容复制到相应的创建文件中。
例如:
在浏览器中打开以下url:https://www.gstatic.com/firebasejs/6.2.0/firebase-app.js
复制此文件的所有输出:
粘贴到各自创建的文件中文件:
对其他3个文件重复这些步骤。
在先前创建的firebase中-消息.js我们将做一个小的调整。
在文件中搜索:
我们将更改服务人员文件的默认路径。这是因为,当应用程序部署到启动板时,路径是动态构建的。使用时sap.ui.require文件.toUrl("您的路径和文件名")您可以让启动板为您构建url。提供指向服务工作者文件的根路径+将文件名和作用域路径保留在末尾,如下面的示例所示。
因此更改以下行:
到:
因为启动板上根目录中的文件不容易调试或访问,我们移动firebase消息传递-软件js进入我们的webapp文件夹。(见上面的文件夹结构)
下一步在这个文件中,我们将做一个小的改变。这是根据Firebase.initialize初始化. 由于我们现在正在启动板中工作,所以通常会关闭应用程序并再次打开。通过将此服务工作者文件移动到webapp文件夹,每次打开应用程序时都会调用此函数。显然,我们不希望这样做。
所以将:
改为:
这样我们就可以检查Firebase是否已经初始化。
同样的逻辑适用于火基.js文件。在这里,我们初始化Firebase到我们的应用程序并返回Firebase模型。因此,在InitializeFreeBase函数中,我们将检查它是否已经初始化,如果已经初始化,我们只返回我们的模型火基.js在InitializeFreeBase函数中,我们将其更改为:
因此将:
更改为:
这样我们可以检查Firebase是否已初始化。
在本例中清单.json文件我们将添加一些资源下的javascript资源。正如您在"js"键数组下看到的,我们添加了所有资源。显然,这些资源是我们作为对象创建的文件。
uri:文件路径和文件名。例如:libs/firebase-应用程序.js.
名称:要给资源的名称。
版本:资源的版本。在本例中,电商平台数据分析,版本6.2.0(您可以在您的url中找到)
以下是您的清单.json文件应该是这样的: