将 SRC 从索引.html移动到组件 ui5



所以我的索引中有以下行,我的应用程序运行良好。

<script src="/sap/bc/ui5_ui5/sap/project/util/moment.js"> </script>
<script src="/sap/bc/ui5_ui5/sap/project/util/moment-timezone-with-data-2010-2020.js"> </script>

但是现在我的应用程序被调用为组件,我需要将其移动到组件部分。但我不确定该怎么做。我尝试了一些没有运气的事情。

如果我删除这行代码,当它作为独立运行时,我会在我的应用程序中遇到与我通过组件调用它时相同的错误,所以我知道这是缺少的代码行。任何帮助将不胜感激。

有多种方法可以包含外部 js 库。

  1. 包含在使用库的 UI5 控制器中。

    sap.ui.define([     "sap/ui/core/mvc/Controller",
    "<projectNameSpace>/<realtivePathofJSLibrarytoTheComponent>/moment.js"
    ], function(Controller){
    .... Use momnet() here....
    }
    
    1. 包含在组件中.js,如 1。到这个"时刻"将通过应用程序获得。尽管下一个选项是首选。

    2. 在应用程序的 manifest.json 中提及(在 manifest.json --> sap.ui5 --> 资源中(。此选项还允许 您可以在整个应用程序中使用"时刻"。

    "sap.ui5": { "资源":{ "js": [{ "uri": "/moment.js" }] } }

更好地使用 manifest.json 文件中的 "resources" 节点,如下所示:

"resources": {
"js": [ {
"uri": "URI/to/JS/file.js",
"name": "filename.js",
"version": "1.1.1"
}]
}

或者在组件.js文件中的初始化事件中使用 JQuery.sap.require((

jQuery.sap.require('namespace.folder.fileName')

您应该阅读两篇好文章:

  1. https://blogs.sap.com/2017/04/30/how-to-include-third-party-libraries-modules-in-sapui5/
  2. https://blogs.sap.com/2016/10/29/sapui5-application-startup-performance-best-practices/

最新更新