说明
Jerry 从 2014 年加入 SAP成都研究院 CRM Fiori 开发团队之后开始接触 SAP UI5,曾经在 SAP 社区和“汪子熙”微信公众号上发表过多篇关于 SAP UI5 工作原理和源码解析的文章。
在 Jerry 这篇文章 对 SAP UI5 一无所知的新手,从哪些材料开始学习比较好? 曾经提到,Jerry 也是从 SAP UI5 菜鸟一路走过来,深知只有 ABAP 开发背景的开发者,向 SAP UI5 开发领域转型的不易,因此我在业余时间设计了这份适合 SAP UI5 初学者的学习教程,把开发一个完整的 SAP UI5 应用的流程,拆分成若干个步骤,力求每个步骤里,把涉及到的知识点都涵盖到。这些知识点可能不像我的 UI5 源码分析系列文章那么深入,但力求浅显易懂,便于 SAP UI5 初学者理解。
本教程每一个步骤的源代码,都存放在我的 Github 上,分别用文件夹 01,02,03 等等来标识。
每一个步骤均是前一步骤的基础上,添加了若干新特性。建议零基础或者对 SAP UI5 知之甚少的初学者,按照顺序从第一个步骤开始循序渐进地学习,把这些代码下载到本地,配合教程的文字讲解,自己动手,以加深理解。
大家如果对教程的每个步骤有任何疑问,欢迎在教程对应的步骤文章里给我评论,进行留言。
本教程的前面两个步骤,我们介绍了如何使用 SAP UI5 标准的校验逻辑和自定义校验逻辑,如下图 1 和图 2 所示:
- SAP UI5 应用开发教程之四十六 - 使用 Message Manager 实现开箱即用的验证(Validation)信息抛出
- SAP UI5 应用开发教程之四十七 - 如何自定义 SAP UI5 字符串类型输入字段的校验逻辑
这两个例子实际上都基于 SAP UI5 标准的数据类型 sap.ui.model.type.String
, 即下图第 15 行代码 XML 视图中的定义。
关于 SAP UI5 数据类型的概念,请参考这个步骤:
- SAP UI5 应用开发教程之十九 - SAP UI5 数据类型和复杂的数据绑定
本步骤我们介绍如何开发一个全新的数据类型。这个全新的数据类型继承自 SAP UI5 标准的模板类型:sap.ui.model.SimpleType
,我们给它取名为:sap.ui5.walkthrough.customType.mytype
.
先看一下绑定到这个自定义类型的 input 字段在 UI 上的表现行为:
当我在输入框里输入 1234567890
再回车:
这个字符串会自动被格式化为:1234-5678-90
如果其中输入一个字母,会报验证失败错误消息:格式不合法
。
下面是具体的实现步骤。