更新记录

1.0.1(2023-03-22)

修改多选赋值问题,引入uni-icons

1.0.0(2023-03-20)

初始版本


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.7.0 × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

Select组件

配置参数

属性 说明
multiple 是否多选
options 数据列表
placeholder 无选项值
slabel options键值对关系
svalue options键值对关系
filterable 是否可搜索
remoteMethod 远程调用方法
height 面板高度

事件

事件名 说明
change 选择触发

组件使用

<template>
    <view class="content">
        单选:{{select1}}
        <qy-select v-model="select1" :options="data"></qy-select>
        单选:{{select2}}
        <qy-select v-model="select2" :options="data" filterable></qy-select>
        单选分页:{{select3}}
        <qy-select v-model="select3" :options="data" :remoteMethod="remoteMethod" filterable remote></qy-select>
        多选:{{muiSelect}}
        <qy-select v-model="muiSelect" :options="data" multiple></qy-select>
        <view class="bottom">
            底部:{{select4}}
            <qy-select v-model="select4" :options="data"></qy-select>
        </view>
    </view>
</template>

<script>
import QySelect from '../../components/qiyan-select/qiyan-select'
export default {
    components: {
        QySelect
    },
    data() {
        return {
            select1: '',
            select2: '',
            select3: '',
            select4: '',
            muiSelect: [],
            data: []
        }
    },
    onLoad() {
        uni.showLoading({
            title: '加载中'
        });
        setTimeout(() => {
            for (let i = 1; i <= 10; i++) {
                this.data.push({
                    label: "选项" + i,
                    value: i
                });
            }
            uni.hideLoading();
        }, 3000)
    },
    methods: {
        remoteMethod(params) {
            let page = params.page;
            console.log(page);
            return new Promise(resolve => {
                for (let i = (page - 1) * 10 + 1; i <= page * 10; i++) {
                    this.data.push({
                        label: "选项" + i,
                        value: i
                    });
                }
                resolve({ success:true, noMore:false });
            })
        }
    }
}
</script>

<style scoped>
.content {
    padding: 0 10px;
}

.bottom {
    position: fixed;
    bottom: 100px;
    width: calc(100% - 20px);
    /* padding: 0 10px; */
}
</style>

说明

此插件依赖uni-scss\uni-icons\uni-load-more,请务必安装!!!

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问