Select 选择器
McSelect 用于从选项列表中选择一个值,内部已包含字段展示层,可直接作为 McForm 的子组件使用。
基础用法
展开时选择器会像按钮一样向下压入 4px,右侧三角旋转 180°;收起后恢复。它使用 Connected Overlay,支持方向键、Home、End、Enter、Space 与 Escape。选项列表为空时 Enter / Space 不会吞掉按键去选择 -1。需要输入搜索时请使用 Autocomplete。
验证机制
选择器共享统一表单契约:required、rules、errorMessages、validateOn、disabled、readonly、id。
API
Props
| 名称 | 类型 | 默认 | 说明 |
|---|---|---|---|
modelValue | string | number | boolean | null | null | 当前选中项的 value,支持通过 v-model 双向绑定。 |
options | (primitive | { title, value, disabled? })[] | [] | 候选项;原始值会自动转换为同名标题和值。 |
placeholder | string | - | 未选择任何项目时显示的占位文本。 |
label | string | - | 字段标签。 |
description | string | - | 显示在选择器前的补充说明。 |
hint | string | - | 无错误时显示的辅助提示。 |
disabled | boolean | false | 是否禁用展开和选择。 |
readonly | boolean | false | 是否只读展示并阻止展开和选择。 |
required | boolean | false | 是否要求选择一项,并接入 McForm 验证。 |
rules | McRule<McSelectValue>[] | [] | 字段验证规则列表,规则可同步或异步返回结果。 |
errorMessages | string | string[] | - | 外部错误消息;提供后直接显示为错误状态。 |
validateOn | input | blur | submit | lazy | 继承 / input | 覆盖字段的验证触发时机;未提供时继承 McForm。 |
id | string | 自动生成 | 触发按钮、列表框与字段辅助文本关联所用的 id。 |
事件:update:modelValue、change;option 插槽获得 { option, selected }。
最后更新于