A2UI 数字输入框 InputNumber
通过 Schema 配置生成 XInputNumber 数字输入框组件。
字段配置
json
{
"name": "age",
"label": "年龄",
"type": "number",
"props": {
"placeholder": "请输入年龄",
"min": 0,
"max": 150,
"precision": 0,
"step": 1
},
"rules": [
{ "type": "required", "message": "年龄必填" }
]
}Props 配置
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| placeholder | string | - | 占位文本 |
| min | number | -Infinity | 最小值 |
| max | number | Infinity | 最大值 |
| precision | number | - | 小数精度 |
| step | number | 1 | 步进值 |
| disabled | boolean | false | 禁用状态 |
| controls | boolean | true | 显示控制按钮 |
| controlsPosition | string | - | 控制按钮位置 |
校验规则
json
"rules": [
{ "type": "required", "message": "必填" },
{ "type": "min", "value": 0, "message": "最小值为0" },
{ "type": "max", "value": 100, "message": "最大值为100" }
]示例
基础数字输入
json
{ "name": "quantity", "label": "数量", "type": "number" }带范围的数字输入
json
{ "name": "score", "label": "分数", "type": "number", "props": { "min": 0, "max": 100 } }带精度的数字输入
json
{ "name": "price", "label": "价格", "type": "number", "props": { "precision": 2, "min": 0 } }渲染组件
A2UI Number 字段会渲染为 XTO UI 的 XInputNumber 组件:
vue
<XInputNumber
v-model="formData.age"
placeholder="请输入年龄"
:min="0"
:max="150"
/>相关链接
- XInputNumber 组件文档 - XTO UI 数字输入框详细说明
- A2UI 表单 - 表单整体配置