SAPUI5拓展标准应用的Controller原理分析及应用实践
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了SAPUI5拓展标准应用的Controller原理分析及应用实践,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2286字,纯文字阅读大概需要4分钟。
内容图文
前言
鉴于SAP S/4 HANA的世界性普及,外加中国区云服务的正式落地,作为SAP 移动端用户体验的自有H5框架,也愈加备受关注, 目前SAP大部分产品都是基于SAP Fiori进行定制开发,因此SAP Fiori也提供给客户大量的标准应用,只需要基础运维人员进行安装,即可实现实施应用。
于此同时,基于业务场景的个性化的开发不可或缺,如果能在原理逻辑上稍加修改,这样可以减少很多时间和成本,所以今天我们就来看一下SAP UI5如何实现controller的拓展。
实验分析
SAPUI5是通过合并的方法拓展一个基础的Controller实例, 也就是说会合并标准应用的controller和我们自定义的controller,并应用到我们的拓展应用当中。
由此可见,SAPUI5的拓展方式并不是应用继承,如果在自定义(拓展的)controller中定义了和标准controller同样的名字,标准controler的方法会被覆盖掉。
但是对于生命周期类的方法是例外的,比如:onInit, onExit, onBeforeRendering, onAfterRendering。这些方法并不会覆盖,会被执行两次。
onInit and onAfterRendering: 这两个方法顺序为: 标准 —》 自定义
onExit and onBeforeRendering: 这两个方法为: 自定义 ——》 标准。
接下来我们我们看一具体的例子。
这是一个标准的controller.
sap.ui.controller("samples.components.ext.sap.Main", {
onInit : function() {
console.log("samples.components.ext.sap.Main - onInit");
},
doSomething: function() {
alert("this is an original standard action");
},
doSomeStandardAction: function() {
alert("this is another original standard action");
}
});
这是一个自定义拓展的controller.
sap.ui.controller("samples.components.ext.customer.CustomMain", {
onInit : function() {
console.log("samples.components.ext.customer.CustomMain - onInit");
},
doSomething: function() {
alert("this is a customer action");
},
doSomeCustomAction: function() {
alert("this is another customer action");
}
});
在component.js中指定合并的两个controller文件。这个配置会在自定义拓展应用的component文件中,代码如下:
customizing: {
"sap.ui.controllerExtensions": {
"samples.components.ext.sap.Main": {
controllerName: "samples.components.ext.customer.CustomMain"
}
},
.....some more content
在拓展应用中,我们可以看到会执行onInit方法两次:
samples.components.ext.sap.Main - onInit
samples.components.ext.customer.CustomMain - onInit
对于doSomething方法,我们在自定义拓展的controler重新定义了一下,这个标准的controler就会被覆盖,我们会看到执行了:
alert("this is a customer action");
但是对于doSomeCustomAction, doSomeStandardAction两个方法并没有重名,所以不会被覆盖,两者都会执行。
对于自定义的应用,使用Sap 官方webIDE开发效率上非常高,但是如果用Eclipse开发,会存在一些问题,需要做出调整才能在eclipse上运行起来并拓展,所以这里建议大家使用webIDE进行开发。
拓展小技巧: https://help.sap.com/saphelp_uiaddon20/helpdata/en/8f/bf4e728bd146fcb2053aeb6ca741f9/content.htm
原文:http://blog.csdn.net/jiangbo_phd/article/details/71035993
内容总结
以上是互联网集市为您收集整理的SAPUI5拓展标准应用的Controller原理分析及应用实践全部内容,希望文章能够帮你解决SAPUI5拓展标准应用的Controller原理分析及应用实践所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。