Input 输入
用于表单里 input 输入项。
基本用法
使用 v-model
绑定输入值。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("");
</script>
尺寸大小
设置不同尺寸。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" size="large" />
<br /><br />
<gov-input v-model="value" />
<br /><br />
<gov-input v-model="value" size="small" />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("");
</script>
禁用状态
设置 disabled
禁用输入框。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" disabled />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("填充内容");
</script>
前缀后缀
设置 prefix
和 suffix
来显示前后缀。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" prefix="¥" suffix="RMB" />
<br /><br />
<gov-input v-model="value">
<template #prefix> $ </template>
<template #suffix> USD </template>
</gov-input>
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("");
</script>
前置后置
前置和后置插槽与 prefix
和 suffix
位置不同。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value">
<template #addonBefore>💰</template>
<template #addonAfter>🔥</template>
</gov-input>
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("");
</script>
清空按钮
当有内容时,鼠标经过现实清空按钮。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" clear />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("填充内容");
</script>
密码框
密码框模式,可以点击切换密码是否可见。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" password />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("123456");
</script>
字数提示
设置maxlength
来设置最大输入长度;设置 count
会有统计效果。
查看代码
vue
<template>
<demo-container class="gov-demo-input">
<gov-input v-model="value" count />
<br /><br />
<gov-input v-model="value2" count :maxlength="5" />
<br /><br />
<gov-input v-model="value3" :maxlength="5" />
</demo-container>
</template>
<script setup>
import { ref } from "vue";
const value = ref("");
const value2 = ref("");
const value3 = ref("");
</script>
Attributes
属性名 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
width | 输入框宽度 | Number | — | null |
size | 输入框尺寸 | String | — | — |
addonBefore | 前置标签内容 | String/Number | — | — |
addonAfter | 后置标签内容 | String/Number | — | — |
prefix | 前缀内容 | String/Number | — | — |
suffix | 后缀内容 | String/Number | — | — |
clearable | 是否可清空 | Boolean | true, false | true |
password | 是否为密码输入 | Boolean | true, false | false |
disabled | 是否禁用 | Boolean | true, false | false |
readonly | 是否只读 | Boolean | true, false | false |
placeholder | 占位符 | String | — | 请输入 |
maxlength | 最大长度 | Number | — | — |
count | 是否显示字数统计 | Boolean | true, false | false |
modelValue | 绑定值 | String/Number | — | — |
triggerForm | 是否触发表单验证 | Boolean | true, false | true |
Events
事件名 | 说明 | 回调参数 |
---|---|---|
update:modelValue | 绑定值更新时触发 | 新的值 |
clear | 清空按钮点击时触发 | — |
input | 输入时触发 | 输入的值 |
change | 值改变时触发 | 新的值 |
focus | 获得焦点时触发 | 事件对象 |
blur | 失去焦点时触发 | 事件对象 |
Slots
插槽名 | 说明 |
---|---|
addonBefore | 前置标签内容 |
addonAfter | 后置标签内容 |
prefix | 输入框前缀内容 |
suffix | 输入框后缀内容 |
icon | 自定义图标,可以放置自定义的图标。 |