有没有办法在OpenUI5 / SAPUI5中指定manifest.json文件的位置?
我在Cordova中部署应用程序,并希望通过从其他位置读取manifest.json文件来更新应用程序配置。我们的manifest.json指定了环境URL。如果我们需要更改环境,则复制文件比重新打包和重新部署更简单。
我是以错误的方式来做这件事的吗?有关更改环境参数而无需重新部署的更好方法的任何建议?应用程序可在iOS和Android上运行。
答案 0 :(得分:1)
查看ComponentMetadata的来源,您似乎可以将清单设置为从默认位置加载
metadata: {
manifest: "json"
}
或提供实际的清单作为javascript对象。
metadata: {
manifest: {
"sap.app": {
"type": "component",
"i18n": "resources/i18n/texts.properties",
"title": "Bla",
"description": "Blabla",
"applicationVersion": {
"version": "1.0.0"
},
"dataSources": {
}
}
}
您可以使用它从非默认位置加载清单并分配反序列化的json。
答案 1 :(得分:0)
感谢@schnoedel给我这个想法。我最终做的是加载一个json配置文件并附加到全局模型。我可以使用cdvfile:// url。
访问本机文件系统上的配置文件if(Device.os.ios) {
oModel.loadData('cdvfile://localhost/library/Preferences/config.json','',true,'GET',true);
} else {
oModel.loadData('cdvfile://localhost/documents/config.json','',true,'GET',true);
}
this.setModel(tModel);
此代码位于Component.js init函数中。似乎在此处设置模型使其在整个应用程序中都是全局的。