Skip to content

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>

前缀后缀

设置 prefixsuffix 来显示前后缀。

查看代码
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>

前置后置

前置和后置插槽与 prefixsuffix 位置不同。

查看代码
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输入框宽度Numbernull
size输入框尺寸String
addonBefore前置标签内容String/Number
addonAfter后置标签内容String/Number
prefix前缀内容String/Number
suffix后缀内容String/Number
clearable是否可清空Booleantrue, falsetrue
password是否为密码输入Booleantrue, falsefalse
disabled是否禁用Booleantrue, falsefalse
readonly是否只读Booleantrue, falsefalse
placeholder占位符String请输入
maxlength最大长度Number
count是否显示字数统计Booleantrue, falsefalse
modelValue绑定值String/Number
triggerForm是否触发表单验证Booleantrue, falsetrue

Events

事件名说明回调参数
update:modelValue绑定值更新时触发新的值
clear清空按钮点击时触发
input输入时触发输入的值
change值改变时触发新的值
focus获得焦点时触发事件对象
blur失去焦点时触发事件对象

Slots

插槽名说明
addonBefore前置标签内容
addonAfter后置标签内容
prefix输入框前缀内容
suffix输入框后缀内容
icon自定义图标,可以放置自定义的图标。

Released under the MIT License.