当前位置:网站首页>SAP UI5 数据类型(data type) 学习笔记
SAP UI5 数据类型(data type) 学习笔记
2022-04-22 17:54:00 【Jerry Wang】
SAPUI5 中的数据类型用作验证用户输入的机制(例如,“hello”不是订单数量的可接受值),并确保数据在 UI 上被正确格式化和显示(例如将 1234567 显示为 1,234,567 需要时)。当与支持双向绑定的数据模型结合使用时——这是使用它们的最佳方式——数据类型确保模型中的数据只有在用户提供有效值时才会更新。
用户输入验证也可以通过在事件处理程序中为每个输入字段编写验证逻辑来完成;可以通过在任何显示值的地方编写和使用格式化程序来格式化显示的值。 但显然,这种方法不具备可扩展性——随着应用程序的增长,维持使用这种方法完成的开发所需的工作量会迅速增加。
SAPUI5 框架附带了一些可以在应用程序中使用的常用数据类型。 这些包括布尔值、日期和浮点数。 可以通过指定约束和格式选项来调整使用数据类型的绑定的行为。 约束(如 Float 的最小值和最大值)可用于限制被认为有效的值的范围。 任何违反约束的用户输入都被认为是无效输入,模型中的相应路径将不会被更新。 另一方面,指定格式选项以配置特定值应如何在 UI 上显示(如 Float 的 groupingSeparator 和 decimalSeparator)。 模型中对应路径的值在显示前会根据类型的格式选项进行格式化。 此外,用户还可以输入带格式(如 12,345)或不带格式(12345)的输入,这两者都被认为是有效的。
下图是 SAP UI5 标准的 Integer 数据类型及其 constraints 在 XML 视图中的用法:
如何创建一个 SAP UI5 自定义数据类型?
为了开始创建自定义数据类型,我们扩展了 sap.ui.model.SimpleType 类并覆盖了 SimpleType 父类中定义的 3 个方法——parseValue、validateValue 和 formatValue.
parseValue(sExternalValue)
该方法接收用户的输入作为参数。 该方法的工作是将用户的输入值(外部格式)转换为值的合适的内部表示(内部格式)。
validateValue(sInternalValue)
此方法接收解析的值(即,由 parseValue 方法确定的值的内部表示)并且必须确定该值是否有效。 如果确定输入无效,则应在此方法中抛出 sap.ui.model.ValidateException 类型的异常。
formatValue(sInternalValue)
该方法接收解析后的值(内部值)作为参数,并且必须返回一个格式化的值(即对应的外部值)。 此格式化值显示在 UI 上。
在我们开始实现我们的自定义数据类型之前,让我们快速看看框架何时调用这 3 个方法中的每一个。 从图中我们可以看出,框架触发这3个方法的顺序是parseValue() -> validateValue() -> formatValue()。
版权声明
本文为[Jerry Wang]所创,转载请带上原文链接,感谢
https://cloud.tencent.com/developer/article/1985928
边栏推荐
- Notes on soft test high items | information system life cycle
- DOM的综合应用的例子--点击加一和减一
- 微软测试人员简述
- L1-025 positive integer a + B (15 points)
- Unable to translate SQLException with Error code ‘0‘, will now try the fallback translator
- Go operation MySQL
- 发起成立波场联合储备,孙宇晨向美联储发起“挑战”
- S7-1500 CPU通过OPC UA客户端与OPC UA服务器进行数据交换的具体方法步骤
- How to quickly access the live broadcast service? Here comes the qiniu cloud enterprise live broadcast solution
- 文章推荐 2022.4.18
猜你喜欢

How does PR modify the name of the program and how does PR modify the name of the sequence

软考高项笔记 | 立项管理内容

【C语言进阶篇】一篇文章带你认清结构、枚举和联合

软考高项笔记 | 项目建议书的内容
![Failed to start component [StandardEngine[Catalina]. StandardHost[localhost]. StandardContext](/img/b5/f2fc2577b3b14a3897a9c999c28c55.png)
Failed to start component [StandardEngine[Catalina]. StandardHost[localhost]. StandardContext

孙宇晨宣布上线USDD 推进金融自由

软考高项笔记 | 信息系统项目典型生命周期模型

How does the usdd anchored to the US dollar lead the transformation of digital currency

通过反射获得方法的参数实际名称

March 2022 - true questions and analysis of C language (Level 2) in the youth grade examination of the Electronic Society
随机推荐
贵医通预约挂号
微软的软件工程生命周期
[C language] getchar() function buffer
L1-025 positive integer a + B (15 points)
CISP 考试资源分享
邮箱格式测试
tbb concurrent_multiset/concurrent_set unsafe_erase() 崩溃
How can the AVI file exported from PR be read by ImageJ?
JD side: how can a child thread get the value of the parent thread ThreadLocal? I got...
Configuring test libraries for JUnit
常见的测试技术
【Lane】Ultra-Fast-Lane-Detection(1)自定义数据集训练
S7-1500 specific methods and steps of data exchange between CPU and OPC UA server through OPC UA client
Activiti 挂起与激活任务
Audio, video and IM, Bing brother summary
Soft test high item notes | information system security
软考高项笔记 | PERT 三点估算
dpdk从给定的port/queue捕获流量
软考高项笔记 | 可行性研究的步骤
电子书产品日趋丰富,科大讯飞智能办公本仍是理想之选