::: tip 组件名:uni-data-select > 代码块: `uDataSelect` [点击下载&安装](https://ext.dcloud.net.cn/plugin?name=uni-data-select) ::: 当选项过多时,使用下拉菜单展示并选择内容 ## 介绍 本组件要解决问题包括: 1. 数据绑定型组件:给本组件绑定一个 data,会自动渲染一组候选内容。再以往,开发者需要编写不少代码实现类似功能 2. 自动的表单校验:组件绑定了 data,且符合[uni-forms](https://ext.dcloud.net.cn/plugin?id=2773)组件的表单校验规范,搭配使用会自动实现表单校验 在 uniCloud 开发中,`DB Schema`中配置了 enum 枚举等类型后,在 web 控制台的[自动生成表单](https://uniapp.dcloud.io/uniCloud/schema?id=autocode)功能中,会自动生成`uni-data-select`组件并绑定好 data > **注意事项** > 为了避免错误使用,给大家带来不好的开发体验,请在使用组件前仔细阅读下面的注意事项,可以帮你避免一些错误。 > > - 组件需要依赖 `sass` 插件 ,请自行手动安装 > - 本组件为数据驱动,目的是快速投入使用,只可通过 style 覆盖有限样式,不支持自定义更多样式 > - 如使用过程中有任何问题,或者您对 uni-ui 有一些好的建议,欢迎加入 [uni-im](https://im.dcloud.net.cn/#/?joinGroup=65aa42e5465fe748c837da2b) > - 组件支持 nvue ,需要在 `manifest.json > app-plus` 节点下配置 `"nvueStyleCompiler" : "uni-app"` > - 如组件显示有问题 ,请升级 `HBuilderX` 为 `v3.1.0` 以上 ### 安装方式 本组件符合[easycom](https://uniapp.dcloud.io/collocation/pages?id=easycom)规范,`HBuilderX 2.5.5`起,只需将本组件导入项目,在页面`template`中即可直接使用,无需在页面中`import`和注册`components`。 如需通过`npm`方式使用`uni-ui`组件,另行文档:[https://ext.dcloud.net.cn/plugin?id=55](https://ext.dcloud.net.cn/plugin?id=55) ### 基本用法 设置 `localdata` 属性后,组件会通过数据渲染出对应的内容 ```html ``` ```javascript export default { data() { return { value: 1, range: [ { value: 0, text: "篮球" }, { value: 1, text: "足球" }, { value: 2, text: "游泳" }, ], }; }, methods: { change(e) { console.log("e:", e); }, }, }; ``` ### 云端数据示例 ```html ``` ## API ### DataSelect Props | 属性名 | 类型 | 可选值 | 默认值 | 说明 | | :-----------: | :-----------: | :--------: | :------: | :--------------------------------------------------: | | value/v-model | String/Number | - | - | 已选择数据的 value 值(当其值为0时不进行初始化赋值) | | localdata | Array | - | - | 本地渲染数据 | | clear | Boolean | - | - | 是否可以清空已选项 | | label | String | | | 左侧标题 | | placeholder | String | - | 请选择 | 输入框的提示文字 | | emptyTips | String | - | 暂无数据 | 没有数据时显示的文字 ,本地数据无效 | | placement | String | bottom,top | bottom | 弹出时位置 | | page-size | Number | - | 20 | 返回的数据量(云端请求时有效,更多云端属性详见下方) | #### 使用云端数据时的属性(DataCom Props) 更多 DataCom 支持的属性参考(包括:设置返回20个的默认大小)[更多](https://uniapp.dcloud.net.cn/component/datacom.html#%E8%AF%AD%E6%B3%95%E6%89%8B%E5%86%8C) #### Localdata Options `localdata` 属性的格式为数组,数组内每项是对象,需要严格遵循如下格式 | 属性名 | 说明 | | :-----: | :--------: | | text | 显示文本 | | value | 选中后的值 | | disable | 是否禁用 | ### DataSelect Events | 事件名 | 事件说明 | 返回参数 | | :-----: | :--------------------: | :------: | | @change | 选中状态改变时触发事件 | - | ## 示例 ::: warning 注意 直接拷贝示例代码,无法运行 ,示例依赖了 `uni-card` `uni-section` `uni-scss` 等多个组件。 请到 [组件下载页面](https://ext.dcloud.net.cn/plugin?name=uni-data-select) ,在页面右侧选择 `使用 HBuilderX导入示例项目` ,体验完整组件示例。 ::: :::preview https://hellouniapp.dcloud.net.cn/pages/extUI/data-select/data-select ```html ``` ::: [完整示例演示](https://hellouniapp.dcloud.net.cn/pages/extUI/data-select/data-select)