基础单选
vue
<template>
<view class="page">
<view class="card">
<label>单选</label>
<ex-input-select
v-model="selectVal"
:list="list"
@change="change"
></ex-input-select>
</view>
</view>
</template>
<script>
export default {
data() {
return {
selectVal: 1,
list: [
{
label: "选项1",
value: 1,
},
{
label: "选项2",
value: 2,
},
{
label: "选项3",
disabled: true,
value: 3,
},
{
label: "选项4",
disabled: true,
value: 4,
},
{
label: "选项5",
disabled: true,
value: 5,
},
{
label: "选项6",
value: 6,
},
{
label: "选项7",
value: 7,
},
{
label: "选项8",
value: 8,
},
{
label: "选项9",
value: 9,
},
],
};
},
methods: {
change(data) {
console.log(this.selectVal, "select---------");
console.log(data, "data-------");
},
},
};
</script>
<style lang="scss" scoped>
.page {
padding: 40rpx;
}
.card {
margin-top: 40rpx;
}
</style>
基础多选
vue
<template>
<view class="page">
<view class="card">
<label>多选</label>
<ex-input-select
v-model="selectVal"
:list="list"
multiple
></ex-input-select>
</view>
</view>
</template>
<script>
export default {
data() {
return {
selectVal: ["输入的选项反显", 1, 2],
list: [
{
label: "选项1",
value: 1,
},
{
label: "选项2",
value: 2,
},
{
label: "选项3",
disabled: true,
value: 3,
},
{
label: "选项4",
disabled: true,
value: 4,
},
{
label: "选项5",
disabled: true,
value: 5,
},
{
label: "选项6",
value: 6,
},
{
label: "选项7",
value: 7,
},
{
label: "选项8",
value: 8,
},
{
label: "选项9",
value: 9,
},
],
};
},
methods: {
change(data) {
console.log(this.selectVal, "select---------");
console.log(data, "data-------");
},
},
};
</script>
<style lang="scss" scoped>
.page {
padding: 40rpx;
}
.card {
margin-top: 40rpx;
}
</style>
属性
属性名 | 类型 | 默认值 | 可选值 | 说明 |
---|---|---|---|---|
list | Array | Array<String,Number,Object> | 选项列表 | |
placeholder | String | 请选择 | ||
emptyTips | String | 无选项 | 空列表提示 | |
clear | Boolean | false | 是否显示输入框后面清除按钮 | |
labelKey | String | label | 列表为数组对象形式显示 key | |
valueKey | String,Number | 列表为数组对象绑定 valueKey | ||
placeholderStyle | String | color:#B2B2B2;font-size:24rpx | placeholder 样式 | |
textAlign | String | left | left,right | 输入框文字对齐方式 |
listPostion | String | left | left,right | 列表相对输入框的对齐方式 |
listOffset | String | 0px | list 选项相对输入框的偏移量 | |
listWidth | String | 100% | left,right | list 的宽度,默认继承父元素的宽度 100% |
zIndex | Number | 1000 | 层级 | |
multiple | Boolean | false | true,false | 是否多选 |
maxNum | Number | Infinity | 最大选中数量, 仅多选有效 | |
maxNumToast | String | 超出最大选中数量 | 超出最大选中数量的提示信息 | |
disabledArr | Array | [] | 禁用选项(同按钮组使用方式) | |
selectedStyle | Object | color: '#409eff' | 下拉选项选中样式 | |
unSelectedStyle | Object | color: '#4D4D4D' | 下拉选项未选中样式 | |
disabledStyle | Object | color: '#80808050' | 下拉选项禁用的样式 | |
selectedIconColor | String | #409eff | 下拉选项选中时图标样式 |
list 配置项
属性名 | 类型 | 默认值 | 可选值 | 说明 |
---|---|---|---|---|
label | String,Number | 显示的字段 ke | ||
value | 绑定的 key | |||
disabled | Boolean | false | 是否禁用选项 true 禁用 |
事件
事件名 | 说明 |
---|---|
change | 选中项更改事件 |