一、引言 表单是应用收集用户信息的主要方式。无论是登录注册、个人信息填写、搜索筛选,还是设置配置,都离不开表单组件。而表单的核心挑战是数据校验如何确保用户输入的数据格式正
一、引言表单是应用收集用户信息的主要方式。无论是登录注册、个人信息填写、搜索筛选,还是设置配置,都离不开表单组件。而表单的核心挑战是数据校验——如何确保用户输入的数据格式正确、内容合法。 HarmonyOS ArkUI 提供了丰富的表单组件(TextInput、TextArea、Checkbox、Radio、Switch 等),结合正则表达式可以实现强大的数据校验能力。本文将以一个清爽蓝白风格的表单页面为主线,深入讲解表单开发与数据校验的核心技能。 二、表单组件概览2.1 输入类组件
2.2 选择类组件
2.3 按钮类组件
三、TextInput 详解3.1 基本用法
代码说明:
3.2 输入类型
代码说明: type 属性控制键盘类型和输入限制:
3.3 其他常用属性
四、正则表达式校验4.1 什么是正则表达式正则表达式(Regular Expression)是一种描述字符串匹配模式的工具。它用特殊的语法定义"什么样的字符串是合法的",然后用来校验、搜索、替换文本。 4.2 常用正则模式
4.3 常用校验正则
代码说明:
五、实战代码:表单校验页面下面我们实现一个完整的表单校验页面,包含用户名、邮箱、手机号、密码四个字段的实时校验。 5.1 定义数据结构
代码说明: RuleRow 接口描述校验规则表格中的一行数据,包含字段名、规则和示例。 5.2 组件状态定义
代码说明:
5.3 校验方法
代码说明: 四个校验方法结构一致,核心逻辑是:
5.4 提交方法
代码说明: submit 方法在点击提交按钮时执行:
5.5 表单字段构建器
代码说明: FormField 是表单字段的通用构建器,通过参数化实现复用:
5.6 构建 UI
代码说明: 表单区通过 FormField 构建器生成四个字段,每个字段传入对应的状态、错误信息和校验回调。提交按钮使用蓝紫渐变、大圆角,形成醒目的 CTA(行动召唤)按钮。
代码说明: 校验规则速查表是一个带表头的三列表格:
六、表单校验最佳实践6.1 实时校验 vs 提交校验
6.2 校验反馈设计
6.3 正则表达式测试正则表达式容易出错,建议先在测试工具中验证,再应用到代码中。 6.4 空值校验除了格式校验,还要处理必填字段的空值校验:
七、常见问题7.1 校验不生效原因:正则表达式错误,或 .test() 使用不当。 解决:先在测试工具验证正则,确认 .test() 参数正确。 7.2 错误提示布局跳动原因:错误信息高度不固定,导致布局变化。 解决:给错误提示设置固定高度(如 .height(16))。 7.3 密码输入显示明文原因:没有设置 .type(InputType.Password)。 解决:设置密码输入类型。 八、总结本文深入讲解了 HarmonyOS 表单与校验技术,通过一个清爽蓝白风格的表单页面实战演示了输入组件、正则校验、实时反馈和提交处理等核心能力。 核心要点回顾:
表单是收集用户信息的关键,掌握校验技术能构建可靠、友好的表单体验。下一篇我们将讲解 HarmonyOS 数据可视化(Canvas 绘图)。 |
2022-04-23
2023-04-23
2024-04-08
2024-11-15
2022-10-16