Input 输入
示例
尺寸
可选的尺寸 ui
属性值:xs
/ s
/ m
/ l
。
<template>
<article>
<section>
<veui-input
ui="l"
value="Large"
/>
</section>
<section><veui-input value="Normal"/></section>
<section>
<veui-input
ui="s"
value="Small"
/>
</section>
<section>
<veui-input
ui="xs"
value="Extra small"
/>
</section>
</article>
</template>
<script>
import { Input } from 'veui'
export default {
components: {
'veui-input': Input
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 1em;
}
</style>
只读状态
设置 readonly
来使输入框处于只读状态。
<template>
<article>
<section>
<veui-checkbox v-model="readonly">
Read-only
</veui-checkbox>
</section>
<section>
<section>
<veui-input
:readonly="readonly"
ui="l"
value="Large"
/>
</section>
<section>
<veui-input
:readonly="readonly"
value="Normal"
/>
</section>
<section>
<veui-input
:readonly="readonly"
ui="s"
value="Small"
/>
</section>
<section>
<veui-input
:readonly="readonly"
ui="xs"
value="Extra small"
/>
</section>
</section>
</article>
</template>
<script>
import { Input, Checkbox } from 'veui'
export default {
components: {
'veui-input': Input,
'veui-checkbox': Checkbox
},
data () {
return {
readonly: true
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 1em;
}
</style>
禁用状态
设置 disabled
来使输入框处于禁用状态。
<template>
<article>
<section>
<veui-checkbox v-model="disabled">
Disabled
</veui-checkbox>
</section>
<section>
<section>
<veui-input
:disabled="disabled"
ui="l"
value="Large"
/>
</section>
<section>
<veui-input
:disabled="disabled"
value="Normal"
/>
</section>
<section>
<veui-input
:disabled="disabled"
ui="s"
value="Small"
/>
</section>
<section>
<veui-input
:disabled="disabled"
ui="xs"
value="Extra small"
/>
</section>
</section>
</article>
</template>
<script>
import { Input, Checkbox } from 'veui'
export default {
components: {
'veui-input': Input,
'veui-checkbox': Checkbox
},
data () {
return {
disabled: true
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 1em;
}
</style>
感知输入法
设置 composition
来感知输入法输入过程中的值。
<template>
<article>
<section>
<veui-checkbox v-model="composition">
Composition
</veui-checkbox>
</section>
<section>Input value: {{ value }}</section>
<section>
<veui-input
v-model="value"
:composition="composition"
/>
</section>
</article>
</template>
<script>
import { Input, Checkbox } from 'veui'
export default {
components: {
'veui-input': Input,
'veui-checkbox': Checkbox
},
data () {
return {
composition: true,
value: ''
}
}
}
</script>
<style lang="less" scoped>
section {
margin-bottom: 20px;
}
</style>
过滤首尾空白字符
设置 trim
来自动过滤用户输入的首尾空白字符。
Input value: ``
<template>
<article>
<section>
<p class="respect-whitespace">Input value: `{{ value }}`</p>
<veui-input
v-model="value"
trim
/>
</section>
</article>
</template>
<script>
import { Input } from 'veui'
export default {
components: {
'veui-input': Input
},
data () {
return {
composition: true,
value: ''
}
}
}
</script>
<style scoped>
.respect-whitespace {
white-space: pre;
}
</style>
API
属性
名称 | 类型 | 默认值 | 描述 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ui | string= | - | 预设样式。
| ||||||||||
value | string | '' |
输入框的值。 | ||||||||||
disabled | boolean= | false | 输入框是否为禁用状态。 | ||||||||||
readonly | boolean= | false | 输入框是否为只读状态。 | ||||||||||
type | string= | 'text' | 输入类型。参见原生
| ||||||||||
placeholder | string= | - | 输入占位符。 | ||||||||||
clearable | boolean= | false | 是否显示清除按钮。 | ||||||||||
composition | boolean= | false | 是否感知输入法输入过程的值。 | ||||||||||
select-on-focus | boolean= | false | 聚焦时是否自动选中输入框文本。 | ||||||||||
get-length | function(string): number= | 自定义的字符长度计算函数。 | |||||||||||
trim | boolean | string= | false | 是否移除前后空格。当为
|
插槽
名称 | 描述 |
---|---|
before | 输入框内前置内容。 |
after | 输入框内后置内容。 |
placeholder | 未输入时的占位内容。 |
事件
名称 | 描述 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
change | 输入框内容变化时触发,即原生
| |||||||||
input |
有效输入时触发,受 |
此外,Input
支持如下的原生事件:
auxclick
、click
、contextmenu
、dblclick
、mousedown
、mouseenter
、mouseleave
、mousemove
、mouseover
、mouseout
、mouseup
、select
、wheel
、keydown
、keypress
、keyup
、focus
、blur
、focusin
、focusout
。
回调函数的参数都为原生事件对象。
图标
名称 | 描述 |
---|---|
remove | 清除按钮。 |