如何为开发和生产环境的资源(css 和图像)使用相同的路径前缀?
How to use the same path prefix for resources (css and images) for development and production environment?
我正在 link访问使用 UI5 制作的应用程序中的资源,例如 css 或图像 文件,但我遇到了问题。
通常,路径例如:
return "css/style1.css"; // for a stylesheet inside the folder css
return "img/image.jpg"; // for a image inside the folder img
并且应用程序部署后它工作正常但是当运行 SAP Web IDE 两者都找不到时 导致 404 错误。
所以对于 运行ning in SAP Web IDE,显示样式和图像的路径是:
return "../../../../../webapp/css/style1.css"; #for a stylesheet inside folder css
return "../../../../../webapp/img/image.jpg"; #for a image inside folder img
那是 工作 运行 SAP Web IDE,但 它不干净。而且我也不确定它在部署后是否可以工作。
是否可以使用标准 link 和 运行 带有 SAP Web IDE 的应用程序在部署前查看结果?
有一个解决方案可以为此创建一个模型:
在 model.js:
createImageRoot: function() {
var oModel = new JSONModel({
path: sap.ui.require.toUrl("the.namespace") // available since 1.58. Otherwise, use jQuery.sap.getModulePath instead.
});
oModel.setDefaultBindingMode("OneWay");
return oModel;
},
在Component.js中,在init方法中添加
this.setModel(models.createImageRoot(), "imageRoot");
然后例如:
return this.getView().getModel("imageRoot").getProperty("/path") + "img/image.jpg"
我正在 link访问使用 UI5 制作的应用程序中的资源,例如 css 或图像 文件,但我遇到了问题。
通常,路径例如:
return "css/style1.css"; // for a stylesheet inside the folder css
return "img/image.jpg"; // for a image inside the folder img
并且应用程序部署后它工作正常但是当运行 SAP Web IDE 两者都找不到时 导致 404 错误。
所以对于 运行ning in SAP Web IDE,显示样式和图像的路径是:
return "../../../../../webapp/css/style1.css"; #for a stylesheet inside folder css
return "../../../../../webapp/img/image.jpg"; #for a image inside folder img
那是 工作 运行 SAP Web IDE,但 它不干净。而且我也不确定它在部署后是否可以工作。
是否可以使用标准 link 和 运行 带有 SAP Web IDE 的应用程序在部署前查看结果?
有一个解决方案可以为此创建一个模型: 在 model.js:
createImageRoot: function() {
var oModel = new JSONModel({
path: sap.ui.require.toUrl("the.namespace") // available since 1.58. Otherwise, use jQuery.sap.getModulePath instead.
});
oModel.setDefaultBindingMode("OneWay");
return oModel;
},
在Component.js中,在init方法中添加
this.setModel(models.createImageRoot(), "imageRoot");
然后例如:
return this.getView().getModel("imageRoot").getProperty("/path") + "img/image.jpg"