Skip to content

Input

输入框

基础用法


在 Input 值改变时触发:
Input 获得焦点时触发 :
Input 失去焦点时触发:
仅当 modelValue 改变时且当输入框失去焦点或按 Enter 时触发:

❣️view the code❣️

vue
<XyInput
  v-model="inputVal"
  placeholder="基础输入框"
  @input="handleInput"
  @focus="handleFocus"
  @blur="handleBlur"
  @change="handleChange"
></XyInput>

ts
<script setup lang="ts">
    import {ref} from "vue"
    const inputVal = ref("")
    const focusInputVal = ref("")
    const BlurInputVal = ref("")
    const changeInputVal = ref("")
    const handleInput = (event) => {

    }
    const handleFocus = (event) => {
        focusInputVal.value = inputVal.value
    }
    const handleBlur = (event) => {
        BlurInputVal.value = inputVal.value
    }
    const handleChange = (event) => {
        changeInputVal.value = inputVal.value
    }
</script>

不同尺寸



❣️view the code❣️

vue
<XyInput sized="lg" placeholder="大型输入框"></XyInput>
<XyInput placeholder="默认输入框"></XyInput>
<XyInput sized="sm" placeholder="小型输入框"></XyInput>

禁用状态

❣️view the code❣️

vue
<XyInput disabled placeholder="禁用状态"></XyInput>

添加图标

❣️view the code❣️

vue
<XyInput placeholder="图标展示" icon="calendar-days"></XyInput>

前后插槽

https://
.com

❣️view the code❣️

vue
<XyInput placeholder="插槽使用">
    <template #prepend>https://</template>
    <template #append>.com</template>
</XyInput>

Props 属性

支持原生 Input 属性

属性名属性类型说明默认值
model-value| v-modelstring | number绑定值-
disabledboolean设置 Input 禁用false
classNamestring自定义CSS类名-
sizedoneOf "sm" | "lg"设置 Input 尺寸-
iconIconProp设置 Input 后面图标-

Event 事件

事件名参数类型说明
inputMouseEvent在 Input 值改变时触发
focusMouseEventInput 获得焦点时触发
blurMouseEventInput 失去焦点时触发
changeMouseEvent仅当 modelValue 改变时且当输入框失去焦点或按 Enter 时触发

Slot 插槽

插槽名说明
prepend输入框前置内容
append输入框后置内容