跳转到内容

Input 输入框

何时使用

  • 需要用户输入表单域内容时。
  • 提供组合型输入框,带搜索的输入框,还可以进行大小选择。

代码演示

基本使用

loading

三种大小

loading

形态变体

loading

前置/后置标签

loading

紧凑模式

loading

搜索框

loading

搜索框 loading

loading

文本域

loading

适应文本高度的文本域

loading

一次性密码框

loading

输入时格式化展示

loading

前缀和后缀

loading

密码框

loading

带移除图标

loading

带字数提示

loading

定制计数能力

loading

自定义状态

loading

聚焦

loading

自定义各种语义结构的样式和类

loading

API

Input

参数说明类型默认值版本
addonAfter带标签的 input,设置后置标签VNode-
addonBefore带标签的 input,设置前置标签VNode-
allowClear可以点击清除图标删除内容boolean |-
classNames用于自定义组件内部各语义化结构的 class,支持对象或函数Record<SemanticDOM, string> | (info: { props })=> Record<SemanticDOM, string>-5.4.0
count字符计数配置CountConfig-5.10.0
disabled是否禁用状态,默认为 falsebooleanfalse
id输入框的 idstring-
maxlength最大长度number-
prefix带有前缀图标的 inputVNode-
showCount是否展示字数boolean | { formatter: (info: { value: string, count: number, maxLength?: number }) => VNode }false4.18.0 info.value: 4.23.0
status设置校验状态'error' | 'warning'-4.19.0
styles用于自定义组件内部各语义化结构的行内 style,支持对象或函数Record<SemanticDOM, CSSProperties> | (info: { props })=> Record<SemanticDOM, CSSProperties>-5.4.0
size控件大小。注:标准表单内的输入框大小限制为 middlelarge | middle | small-
suffix带有后缀图标的 inputVNode-
type声明 input 类型,同原生 input 标签的 type 属性,见:MDN(请直接使用 Input.TextArea 代替 type="textarea")stringtext
value(v-model)输入框内容string-
variant形态变体outlined | borderless | filled | underlinedoutlined5.13.0 | underlined: 5.24.0
onChange输入框内容变化时的回调function(e)-
onPressEnter按下回车的回调function(e)-
onClear按下清除按钮的回调() => void-5.20.0

CountConfig

ts
interface CountConfig {
  // 最大字符数,不同于原生 `maxLength`,超出后标红但不会截断
  max?: number;
  // 自定义字符计数,例如标准 emoji 长度大于 1,可以自定义计数策略将其改为 1
  strategy?: (value: string) => number;
  // 同 `showCount`
  show?: boolean | ((args: { value: string; count: number; maxLength?: number }) => VNode);
  // 当字符数超出 `count.max` 时的自定义裁剪逻辑,不配置时不进行裁剪
  exceedFormatter?: (value: string, config: { max: number }) => string;
}

Input.TextArea

同 Input 属性,外加:

Input.TextArea 的其他属性和浏览器自带的 textarea 一致。

<!--参数说明类型默认值
classNames语义化结构 classRecord<SemanticDOM, string>-
enterButton是否有确认按钮,可设为按钮文字。该属性会与 addonAfter 冲突。VNodefalse
loading搜索 loadingbooleanfalse
onSearch点击搜索图标、清除图标,或按下回车键时的回调function(value, event, { source: "input" | "clear" })-
styles语义化结构 styleRecord<SemanticDOM, CSSProperties>-

其余属性和 Input 一致。

Input.Password

Input.OTP

5.16.0 新增。

开发者注意事项:

mask 属性的类型为 string 时,我们强烈推荐接收单个字符或单个 emoji,如果传入多个字符或多个 emoji,则会在控制台抛出警告。

VisibilityToggle

PropertyDescriptionTypeDefaultVersion
visible用于手动控制密码显隐booleanfalse4.24
onVisibleChange显隐密码的回调(visible) => void-4.24

Input Methods

名称说明参数版本
blur取消焦点-
focus获取焦点(option?: { preventScroll?: boolean, cursor?: 'start' | 'end' | 'all' })option - 4.10.0

基于 MIT 许可发布