Input 输入框

通过鼠标或键盘输入字符。

示例

<template>
  <cvue-input v-model="value"></cvue-input>
</template>

<script lang="ts" setup>
  import { ref } from 'vue'

  const value = ref('')
</script>

属性

属性名说明类型默认值可选值
type类型string native input typesopen in new windowtext-
model-value / v-model绑定值string / number--
maxlength最大输入长度string / number--
minlength原生属性,最小输入长度number--
show-word-limit是否显示统计字数, 只在 type 为 text 或 textarea 的时候生效booleanboolean-
placeholder输入框占位文本string--
clearable是否显示清除按钮,只有当 type 不是 textarea时生效booleanfalse-
formatter指定输入值的格式。(只有当 type 是"text"时才能工作)Function--
parser指定从格式化器输入中提取的值。(仅当 type 是"text"时才起作用)Function--
show-password是否显示切换密码图标booleanfalse-
disabled是否禁用booleanfalse-
size输入框尺寸,只在 type 不为 'textarea' 时有效enum--
prefix-icon自定义前缀图标string / Component--
suffix-icon自定义后缀图标string / Component--
rows输入框行数,仅 type 为 'textarea' 时有效numbernumber-
autosizetextarea 高度是否自适应,仅 type 为 'textarea' 时生效。 可以接受一个对象,比如: { minRows: 2, maxRows: 6 }boolean / objectfalse-
autocomplete原生 autocomplete 属性stringoff-
name等价于原生 input 的name 属性string--
readonly原生 readonly 属性,是否只读booleanfalse-
max原生 max 属性,设置最大值---
min原生属性,设置最小值---
step原生属性,设置输入字段的合法数字间隔---
resize控制是否能被用户缩放enum--
autofocus原生属性,自动获取焦点booleanfalse-
form原生属性string--
labela11y等价于原生 input 的 aria-label 属性string--
tabindex输入框的 tabindexstring / number--
validate-event输入时是否触发表单的校验booleantrue-
input-styleinput 元素或 textarea 元素的 stylestring / object{}-

事件

事件名说明类型
blur当选择器的输入框失去焦点时触发(event: FocusEvent) => void
focus当选择器的输入框获得焦点时触发(event: FocusEvent) => void
change仅当 modelValue 改变时,当输入框失去焦点或用户按Enter时触发(value: string | number)=>void
input在 Input 值改变时触发(value: string | number)=>void
clear在点击由 clearable 属性生成的清空按钮时触发() => void

插槽

插槽名说明slotProps
prefix输入框头部内容,只对非 type="textarea" 有效-
suffix输入框尾部内容,只对非 type="textarea" 有效-
prepend输入框前置内容,只对非 type="textarea" 有效-
append输入框后置内容,只对非 type="textarea" 有效-
上次更新:
贡献者: wishzhang