字段类型说明
Framework:
概述
Schema FormX 支持多种字段类型,每种类型都有对应的默认组件。本章节将详细介绍所有支持的字段类型及其使用方法。
支持的字段类型
说明:空值判断用于
required: true时的必填验证,满足空值条件时会提示"不能为空"。
数据类型转换:Schema FormX 不会自动进行类型转换。如果字段声明为
type: 'number',绑定的数据值取决于组件onChange回调传出的值(例如,如果组件传出字符串"123",数据值将是"123"而非123)。确保自定义组件传出正确类型的值是组件自身的责任。
字段类型示例
String 类型
字符串类型是最常用的字段类型,用于处理文本输入。
基础用法
常用属性
说明:以下属性是 DefaultControl(默认 Input 组件)的常用属性,通过
schema.props传递。如果你注册了自定义组件,可用属性取决于该组件自身的 API。
示例
Number 类型
数字类型用于处理数值输入。
基础用法
常用属性
说明:以下属性是 DefaultControl(默认 InputNumber 组件)的常用属性,通过
schema.props传递。
示例
Boolean 类型
布尔类型用于处理开关、复选框等二值输入。
基础用法
常用属性
说明:以下属性是 DefaultControl(默认 Checkbox/Switch 组件)的常用属性,通过
schema.props传递。
示例
Object 类型
对象类型用于处理复杂的数据结构,需要配合自定义组件使用。
基础用法
使用场景
- 地址选择(省/市/区)
- 坐标选择(经度/纬度)
- 复杂对象的结构化输入
默认值
对象类型的默认值为 {},空对象 {} 在必填验证时会被判定为空。
Array 类型
数组类型用于处理列表数据,需要配合自定义组件使用。
基础用法
使用场景
- 标签输入
- 文件上传列表
- 多选选择器
默认值
数组类型的默认值为 [],空数组 [] 在必填验证时会被判定为空。
自定义类型
除了内置类型,还可以通过自定义组件来处理特殊类型。
自定义组件
类型验证
Schema FormX 会根据字段类型进行基础验证:
必填验证
当 required: true 时,会根据字段类型判断空值:
空值判断规则:
类型验证
自定义验证
最佳实践
- 选择合适的类型:根据数据特点选择最合适的字段类型
- 使用默认组件:优先使用默认组件,减少自定义代码
- 类型与验证配合:结合类型和验证规则确保数据质量
- 考虑用户体验:为不同类型的字段提供合适的交互方式
- 合理使用默认值:通过
defaultData设置合理的初始值,避免空值问题 - object/array 自定义:object 和 array 类型需要配合自定义组件使用