Skip to content

Input 输入框

原生 <input> 增强的基础输入组件。

基础用法

基础用法

无障碍名称(label)

label(可访问名称)

label 作为输入框的可访问名称(aria-label)来源,读屏朗读该名称。未设置 label 时依次回退 placeholder → 内置文案「输入框」;设置后(如「登录邮箱」)覆盖回退链。

类型

type

type 透传原生 input 类型,支持 text / password / number / email 等。

密码可见切换

show-password

show-passwordtype="password" 时于输入框右侧渲染眼睛按钮,点击在明文/密文间切换;按钮带 aria-label(locale 文案)与 aria-pressed,聚焦时有焦点环。

可清空

可清空(clearable)

存在内容且设置 clearable 时显示清除按钮,点击后清空并聚焦,派发 oas-clear

禁用与只读

disabled / readonly

前后缀(addon)

addon-before / addon-after

addon-before / addon-after 为输入框外侧的 addon 文案块(如单位、域名),分别走独立的 ::part(prepend) / ::part(append),禁用时 addon 灰化。

图标

prefix-icon / suffix-icon

prefix-icon / suffix-icon 接受图标名(@oas-isui/icons 的 iconRegistry),内联渲染 SVG 装饰图标。

内嵌前后缀与清空并存

prefix / suffix + clearable

prefix / suffix 为输入框内部文案,与 clearable、图标、addon 可并存不冲突。

字数统计

show-count + maxlength

show-count 在输入框右下角显示字数统计:设置 maxlength 时显示 当前长度/maxlength,未设置时仅显示当前长度;maxlength 同时透传原生 input 限制输入长度。超过限制时计数数字变 danger 色。

回车提交事件

oas-enter

输入时按 Enter(非输入法组合上屏)派发 oas-enterdetail: { value }

事件

输入与清除事件

监听 oas-input(输入中)与 oas-clear(清除):

API

属性

属性说明类型默认值
addon-after后置 addon 文案块string
addon-before前置 addon 文案块string
clearable可清空boolean
disabled禁用boolean
label可访问名称(aria-label 来源,未设时回退 placeholder → 内置文案「输入框」)
maxlength最大输入长度(透传原生 maxlength)string
placeholder占位提示string
prefix内嵌前置文案string
prefix-icon前置图标名string
readonly只读boolean
show-count显示字数统计(右下角,超限标 danger)boolean
show-password密码可见切换(type="password" 时渲染眼睛按钮)boolean
suffix内嵌后置文案string
suffix-icon后置图标名string
type原生 input 类型stringtext
value值(受控)string

事件

事件说明
oas-clear点击清除,detail: { originalEvent }
oas-enter按 Enter(非输入法组合),detail: { value }
oas-input输入中,detail: { value }