我正在关注UI5 developer guide,尝试构建我的第一个ui5移动应用程序。 但是当我尝试测试我的简单应用时,会出现一些错误:
未捕获错误:无法从Application.js加载“Application.js”:错误:无法从ApplicationBase.js加载“ApplicationBase.js”:404 - 未找到
我回去检查我的代码。是的,没有创建ApplicationBase.js。开发人员指南只说创建application.js,但没有关于applicationbase.js。这个档案是什么? 我该如何实施呢?
修改代码:
这是bootstrap javascript标签:
<script type="text/javascript">
// Tell UI5 where to find application content
sap.ui.localResources("util"); // paths starting with "util" will be resolved relative to the index.html location
sap.ui.localResources("view");
jQuery.sap.registerModulePath('ApplicationBase', 'ApplicationBase');
jQuery.sap.registerModulePath('Application', 'Application');
// Launch application
jQuery.sap.require("Application");
var oApp = new Application({
root: "content"
});
</script>
这是我的application.js:
jQuery.sap.declare("Application");
jQuery.sap.require("ApplicationBase");
ApplicationBase.extend("Application",
{ init : function() { // set global models
var model = new sap.ui.model.json.JSONModel("model/data.json");
var imgModel = new sap.ui.model.json.JSONModel("model/img.json");
sap.ui.getCore().setModel(model);
sap.ui.getCore().setModel(imgModel, "img");
},
main : function() {
// create app view and put to html root element
var root = this.getRoot();
sap.ui.jsview("app", "view.App").placeAt(root);
}
});
我没有applicationbase.js。开发人员指南未提及有关此文件的任何内容。
答案 0 :(得分:2)
在我在另一个教程中找到this之后,我遇到了同样的问题并解决了它:
jQuery.sap.declare("Application");
jQuery.sap.require("sap.ui.app.Application");
sap.ui.app.Application.extend("Application", {
init : function() {
// Do init stuff
},
main : function() {
// create app view and put to html root element
var root = this.getRoot();
sap.ui.jsview("app", "view.App").placeAt(root);
}
});
我认为文档中对 ApplicationBase 的含义更像是您之前创建的抽象应用程序(构造函数)。如果您没有自己想要扩展的应用程序,可以扩展 sap.ui.app.Application 。
也许这对你有帮助。如果您有更多问题,请告诉我。
可以找到完整的概述,甚至更多here。