一套适合SAPUI5初学者的循序渐进的学习教程教程目录SAPUI5本地开发环境搭建SAPUI5应用开发教程1:HelloWorldSAPUI5应用开发教程2:BootstrapSAPUI5应用开发教程3:接触第一个SAPUI5控件SAPUI5应用开发教程4:XMLView初探SAPUI5应用开发教程五:ViewController初探SAPUI5应用开发教程六-理解SAPUI5的模块概念SAPUI5应用开发教程七-JSON模型初探SAPUI5应用开发教程八-SAP多语言支持UI5应用开发教程第9期——创建第一个ComponentSAPUI5应用开发教程第10期——SAPUI5应用开发教程的描述符是什么第11期:SAPUI5容器控制页面和面板SAPUI5应用开发教程第12期——使用CSS类进一步美化UISAPUI5应用开发教程13-如何添加自定义CSS类SAPUI5应用开发教程14-如何使用嵌入式视图SAPUI5应用开发教程15-如何使用对话框和FragmentsSAPUI5应用开发教程No16-图标图标使用SAPUI5应用开发教程第17期-UI5复合控件中的聚合与绑定使用SAPUI5应用开发教程第18期-SAPUI5数据绑定语法中的特殊符号,以及绝对绑定和绑定的概念relativebinding详解SAPUI5应用开发教程十九-SAPUI5数据类型和复杂数据绑定SAPUI5应用开发教程二十-SAPUI5SAPUI5应用开发教程21的表达式绑定用法详解-SAPUI5的CustomFormatterCustomFormatterSAPUI5应用开发教程22-filter过滤器开发与使用SAPUI5应用开发教程20三-排序Sortandgrouping列表控件的GroupSAPUI5应用开发教程24-如何使用OData数据模型SAPUI5应用开发教程25-使用代理服务器解决SAPUI5应用访问远程OData服务的跨域问题SAPUI5应用开发教程26-详解OData服务与Mock服务器的使用步骤SAPUI5应用程序开发教程27-SAPUI5应用程序单元测试工具QUnit介绍SAPUI5应用程序开发教程28-SAPUI5应用程序集成测试工具OPA应用程序开发教程29-SAPUI5路由和导航功能介绍SAPUI5应用程序开发教程30-SAPUI5路由过程中的参数传递SAPUI5应用程序开发教程31-SAPUI5路由历史和路由返回和历史SAPUI5应用程序开发教程第32部分-如何创建一个自定义SAPUI5控件SAPUI5应用开发教程第33部分-SAPUI5应用响应式布局特性(Responsiveness)SAPUI5应用开发教程34-SAPUI5应用基于设备类型页面适配功能(DeviceAdaptation)SAPUI5应用开发教程35-How将本地开发的SAPUI5应用程序部署到ABAP服务器SAPUI5应用程序开发教程三十六-使用Chrome开发人员工具元素选项卡动态修改CSS类SAPUI5应用程序开发教程三十七-使用Chrome开发人员工具控制台面板进行元素审查SAPUI5应用开发教程第38期-使用ChromeReader工具开发,查看程序执行错误时的上下文信息SAPUI5应用开发教程第39篇-SAPUI5应用白屏的一些常见错误及分析方法分享SAPUI5应用开发教程第4部分-如何制作组件预加载包括.jsSAPUI5发布版本SAPUI5应用程序开发教程41-Chrome扩展UI5Inspector的离线安装和使用SAPUI5应用程序开发教程42-SAPUI5自带的诊断ostics诊断工具使用介绍SAPUI5应用开发教程43-SAPUI5自带的SupportAssistant工具使用介绍SAPUI5应用开发教程44-Label和Input没有水平对齐的原因分析及解决方法控制文本解决方案SAPUI5应用程序开发教程45-如何在SAPUI5应用程序中使用jQuery和原生DOMAPISAPUI5应用程序开发教程46-使用消息管理器实现开箱即用的验证(Validation)信息抛出SAPUI5应用程序开发教程47-如何自定义SAPUI5字符串类型输入字段的校验逻辑SAPUI5应用开发教程48-如何在SAPUI5应用中开发条码扫描功能SAPUI5应用开发教程49-如何调试运行在移动端的SAPUI5应用手机桌面电脑上的SAPUI5应用开发教程五十-如何使用Cordova将SAPUI5应用生成为可安装在Android手机上的混合应用SAPUI5应用开发教程五十一-如何使用Chrome调试SAP手机上运行的UI5Cordova混合应用SAPUI5应用开发教程五十二-如何使用SAPUI5的标准控件结合Cordova插件调用手机摄像头进行条码扫描SAPUI5应用开发教程五十三-如何自定义SAPUI5数据类型(DataType)SAPUI5应用开发教程54-如何配置本地SAPUI5应用到本地FioriLaunchpadSAPUI5应用开发教程55-如何集成本地SAPUI5应用通过Node.jsExpress部署到公网。SAPUI5应用开发教程第56期-SAPUI5树控件(树)的开发SAPUI5应用开发教程第57期-基于OData注解的智能字段使用方法学习SAPUI5应用开发教程五十八-使用工厂方法在运行时动态创建不同类型的列表行项目控件SAPUI5应用程序开发教程五十九-如何在SAPUI5应用程序中显示世界地图SAPUI5应用程序开发教程六十-SAPUI5地图控件的一些高级用法SAPUI5应用开发教程六十一-在SAPUI5应用中绘制甘特图六十二SAPUI5应用开发教程-基于ODataV4的SAPUI5表格控件的使用介绍SAPUI5应用开发教程第63期-深入介绍基于ODataV4实现本地MockServerSAPUI5应用开发教程第64期-如何基于ODataV4实现SAPUI5表单控件的filter(过滤)以及sort(排序)功能SAPUI5应用开发教程六十五-基于ODataV4的SAPUI5表格控件如何实现创建、编辑和保存功能SAPUI5应用开发教程六十六-基于ODataV4的SAPUI5表格控件如何实现删除功能SAPUI5应用开发教程六十七-基于ODataV4的SAPUI5List-Detail(列表-详细信息)布局的实现SAPUI5应用开发教程六十八-如何实现SAPUI5路由时的显示failsCustomizedNOTFoundpageSAPUI5ApplicationDevelopmentTutorialPart69-如何从SAPUI5NotFound页面跳转到正常应用页面SAPUI5ApplicationDevelopmentTutorialPart70-如何使用按钮控件触发页面路由跳转到SAPUI5应用开发教程七十一-SAPUI5页面的嵌套路由SAPUI5应用开发教程七十二-SAPUI5页面路由的动画效果设置SAPUI5应用开发教程七十三-使用自定义查询实现UI5页面的SAP书签功能路由SAPUI5应用开发教程七十四——SAPUI5应用使用ODataV4展示Table表数据的陷阱SAPUI5应用开发教程七十五——SAPUI5主从表如何使用联动技术展示复杂的表内容SAPUI5应用开发教程七十六-如何实现SAPUI5的LazyLoading(懒加载、惰性加载)SAPUI5应用开发教程七十七-SAPUI5动态页面路由的高级用法:路由记录路由和目标一To-manyrelationshipSAPUI5应用开发教程七十八——如何通过url维护SAPUI5搜索的状态,使其支持书签功能描述Jerry在加入SAP成都研究院CRMFiori开发团队后开始接触SAPUI5研究所2014年。SAP社区和“王子熙”微信公众号发表了多篇SAPUI5工作原理和源码分析的文章。在本文中,Jerry是一个对SAPUI5一无所知的新手。从哪些材料入手比较好?之前说过,Jerry也是从一个SAPUI5菜鸟一路走来的。他知道,对于一个只有ABAP开发背景的开发人员来说,要转型到SAPUI5开发领域并不容易。因此,我在业余时间设计了这个适合SAPUI5初学者的学习教程,把开发一个完整的SAPUI5应用程序的过程拆分成几个步骤,力求涵盖每个步骤涉及的所有知识点。这些知识点可能没有我的UI5源码分析系列那么深入,但力求通俗易懂,便于SAPUI5初学者看懂。本教程每一步的源码都存放在我的Github上,以01、02、03等文件夹标识,例如第1步的源码在这里。每一步都在上一步的基础上,增加了几个新的特性。建议零基础或对SAPUI5了解不多的初学者从第一步开始按顺序循序渐进学习,将这些代码下载到本地,配合教程的文字讲解,自己动手加深理解。如果大家对教程的每一步有什么疑问,欢迎在教程对应的步骤文章中评论留言。在本教程的第73步,我们讲解了如何让一个SAPUI5页面支持书签功能(bookmarkable):SAPUI5应用开发教程七十三——使用自定义查询实现SAPUI5页面路由的书签功能so-调用了书签功能,比如当我们将下面的url添加到浏览器收藏夹时,将其保存为书签。下次从收藏夹访问这个书签,期待SAPUI5自动打开url中tab=后面的Projects代表的tab,如下图:http://localhost:8080/webapp/...但是,当我们在Employee列表控件中搜索关键词时,比如输入Nancy:搜索完成后,浏览器地址栏中的url并没有发生变化。所以下次你通过urlhttp://localhost:8080/webapp/...进入页面时,搜索状态(在搜索框中输入的值和搜索结果)将丢失。在这一步中,我们将介绍如何通过路由框架将SAPUI5搜索的输入条件和输入结果也保存下来,使其支持书签功能。通过这一步实现应用后,一旦在搜索框中输入关键词,浏览器地址栏中的url末尾就会出现一个片段,记录当前用户输入的关键词。格式如下:?search=<用户输入的关键字>完整url:http://localhost:8080/webapp/...一旦我们把这个url加入收藏夹作为书签,下次访问直接,search=后面的值会在页面渲染时自动作为关键字。并自动触发搜索并得到结果。下面是详细的实现步骤。
