简体中文
Select 下拉选择器
当选项过多时,使用下拉菜单展示并选择内容。
基础用法
适用广泛的基础单选 v-model 的值为当前被选中的 kl-option 的 value 属性值,通过placeholder 属性可以设置展位文字,不设置默认为:Please enter a keyword
<>
<template>
    <kl-select v-model="value">
        <kl-option value="胡桃"></kl-option>
        <kl-option value="夜兰"></kl-option>
        <kl-option value="七七"></kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value = ref()
</script>
<style lang="scss" scoped>
* {
    margin-left: 5px;
}
</style>
禁用状态
禁用整个选择器组件, 添加 disabled 属性,则整个选择器不可用。
<>
<template>
    <kl-select v-model="value" disabled>
        <kl-option value="胡桃"></kl-option>
        <kl-option value="夜兰"></kl-option>
        <kl-option value="七七"></kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value = ref()
</script>
<style lang="scss" scoped>
* {
    margin-left: 5px;
}
</style>
有禁用选项
在 kl-option 中,设定 disabled 值为 true,即可禁用该选项
<>
<template>
    <kl-select v-model="value">
        <kl-option value="胡桃" disabled></kl-option>
        <kl-option value="夜兰"></kl-option>
        <kl-option value="七七"></kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value = ref()
</script>
<style lang="scss" scoped>
* {
    margin-left: 5px;
}
</style>
选项标签
通过 kl-option 的 label 属性可以设置 kl-option 的标签,也可以写在 kl-option 内,不设置默认为 value 的值。
<>
<template>
    <kl-select v-model="value">
        <kl-option value="胡桃">HuTao</kl-option>
        <kl-option value="夜兰" label="YeLan"></kl-option>
        <kl-option value="七七" label="QiQi"></kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value = ref()
</script>
<style lang="scss" scoped>
* {
    margin-left: 5px;
}
</style>
尺寸
使用 size 属性改变下拉选择框大小。 除了默认大小外,还有另外两个选项: large, small。
<>
<template>
    <kl-select v-model="value2" size="large">
        <kl-option value="胡桃">HuTao</kl-option>
        <kl-option value="夜兰">YeLan</kl-option>
        <kl-option value="七七">QiQi</kl-option>
    </kl-select>
    <kl-select v-model="value1">
        <kl-option value="胡桃">HuTao</kl-option>
        <kl-option value="夜兰">YeLan</kl-option>
        <kl-option value="七七">QiQi</kl-option>
    </kl-select>
    <kl-select v-model="value3" size="small">
        <kl-option value="胡桃">HuTao</kl-option>
        <kl-option value="夜兰">YeLan</kl-option>
        <kl-option value="七七">QiQi</kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value1 = ref()
const value2 = ref()
const value3 = ref()
</script>
<style lang="scss" scoped>
* {
    margin-top: 5px;
}
</style>
可清空单选
您可以使用清除图标来清除选择。
为 kl-select 设置 clearable 属性,则可将选择器清空。
<>
<template>
    <kl-select v-model="value" clearable>
        <kl-option value="胡桃"></kl-option>
        <kl-option value="夜兰"></kl-option>
        <kl-option value="七七"></kl-option>
    </kl-select>
</template>
<script setup lang="ts">
import { ref } from 'vue'
const value = ref()
</script>
<style lang="scss" scoped>
* {
    margin-left: 5px;
}
</style>
API
Select 属性
| 属性名 | 说明 | 类型 | 默认值 | 
|---|---|---|---|
| v-model | 绑定值 | boolean | — | 
| disabled | 是否禁用 | boolean | fales | 
| size | 输入框尺寸(large/default/small) | string | default | 
| clearable | 是否可以清空选项 | boolean | false | 
| placeholder | 占位文字 | string | — | 
Option 属性
| 属性名 | 说明 | 类型 | 默认值 | 
|---|---|---|---|
| value | 选项的值 | string / number / boolean / object | — | 
| label | 选项的标签,若不设置则默认与 value 相同 | string/number | — | 
| disabled | 是否禁用该选项 | boolean | false | 
| icon | 把 icon 图标作为 label,不可与文字共用 | String | — | 
Select 事件
| 事件名 | 说明 | 回调参数 | 
|---|---|---|
| change | 仅当 modelValue 改变时触发 | val | 
| clear | 在点击由 clearable 属性生成的清空按钮时触发 | — | 
Kunlun Design