列表形式的选择组件,支持单选和多选。
示例图



基础用法
页面 .json 文件 usingComponents 中引入组件
// json
{
"usingComponents": {
"mx-list-select": "/components/mxwui/list-select/index"
}
}页面 .js 文件中定义
// js
options: [
{text: '选项一', value: 1, checked: false},
{text: '选项二', value: 2, checked: true},
{text: '选项三', value: 3, disabled: true},
]页面 .wxml 文件中使用组件
<mx-list-select options="{{options}}" />更多用法示例
类型 type
属性:type,可选 single 单选、multiple 多选,默认 single 单选类型,必填。
- 单选
type="single"
<mx-list-select />
<mx-list-select type="single" />- 多选
type="multiple"
<mx-list-select type="multiple" />数据项 options
属性:options,数据项,必填。
参数:text,选项名称,用于界面显示。
参数:value,选项值,主要用于传给后端。
参数:checked,选项是否选中。
参数:disabled,选项是否禁用。
除了以上参数,传入的其他参数会原样返回。
// js
data: {
options: [
{text: '选项名', value: '选项值', checked: true, disabled: true},
],
},<mx-list-select options="{{options}}" />单选框样式 singleIcon
属性:singleIcon,可选 default、radio,默认 default 默认样式,必填。
- 默认样式
singleIcon="default"
<mx-list-select />
<mx-list-select singleIcon="default" />- radio样式
singleIcon="radio"
<mx-list-select singleIcon="radio" />复选框样式 multipleIcon
属性:multipleIcon,可选 default、checkbox,默认 default 默认样式,必填。
- 默认样式
multipleIcon="default"
<mx-list-select />
<mx-list-select multipleIcon="default" />- checkbox样式
multipleIcon="checkbox"
<mx-list-select multipleIcon="checkbox" />单选框/复选框颜色 iconColor
属性:iconColor,默认 #CA0E2D,支持任何合法的颜色值。
<mx-list-select iconColor="#1677FF" />单选框/复选框大小 iconSize
属性:iconSize,默认 48,数字,不带单位,默认使用rpx。
<mx-list-select iconSize="30" />文本颜色 textColor
属性:textColor,默认 #040A23,支持任何合法的颜色值。
<mx-list-select textColor="#1677FF" />文本选中颜色 textSelectColor
属性:textSelectColor,默认 #040A23,支持任何合法的颜色值。
<mx-list-select textSelectColor="#1677FF" />描述或错误文案 desc
属性:desc,用于辅助说明文案或错误提示文案,在通栏下方。
<mx-list-select desc="描述内容" />描述或错误文案颜色 descColor
属性:descColor,默认值 #656979,支持任何合法的颜色值。
<mx-list-select descColor="#CA0E2D" />标签文案 label
属性:label,常用于表单填写项的名称。
<mx-list-select label="标签文案" />标签文案文本色 labelColor
属性:labelColor,默认 #040A23,支持任何合法的颜色值。
需要配合 label 属性一起使用
<mx-list-select labelColor="#1677FF" />是否显示必填星号 required
属性:required,默认值 false 不显示必填星号。
- 显示星号
<mx-list-select required />
<mx-list-select required="{{true}}" />- 不显示星号
<mx-list-select required="{{false}}" />
<mx-list-select />必填星号位置 requiredPosition
属性:requiredPosition,可选值 left、right,默认值 right 在标签文本后面。
- 星号在标签后
<mx-list-select required />
<mx-list-select required requiredPosition />
<mx-list-select required requiredPosition="right" />- 星号在标签前
<mx-list-select required requiredPosition="left" />标签前图标 firstIcon
属性:firstIcon,对象,可以自定义图标或图片,自定义图标大小和颜色。
参数:iconName,图标名称,只支持图标库的图标。
参数:iconColor,图标颜色,默认 #040A23,任何合法的颜色值。
参数:iconUrl,自定义图片地址,传入则不使用 iconName 和 iconColor。
参数:iconSize,图标/图片大小,默认 48,不带单位,默认使用 rpx。
事件:bind:list_select_firstIcon,标签前图标点击事件。
// js
data: {
firstIcon: {
iconName: '图标名',
iconColor: '#1677FF',
iconUrl: 'https://cdn.mingsixue.com/xcx/MXWUI/hot.png',
iconSize: 48
},
}<mx-list-select firstIcon="{{firstIcon}}" bind:list_select_firstIcon="事件函数" />标签后图标 lastIcon
属性:lastIcon,对象,可以自定义图标或图片,自定义图标大小和颜色。
参数:iconName,图标名称,只支持图标库的图标。
参数:iconColor,图标颜色,默认 #9AA0B1,任何合法的颜色值。
参数:iconUrl,自定义图片地址,传入则不使用 iconName 和 iconColor。
参数:iconSize,图标/图片大小,默认 32,不带单位,默认使用 rpx。
事件:bind:list_select_lastIcon,标签后图标点击事件。
// js
data: {
lastIcon: {
iconName: '图标名',
iconColor: '#1677FF',
iconUrl: 'https://cdn.mingsixue.com/xcx/MXWUI/hot.png',
iconSize: 32
},
}<mx-list-select lastIcon="{{lastIcon}}" bind:list_select_lastIcon="事件函数" />背景色 bgColor
属性:bgColor,默认 #FFFFFF,支持任何合法的颜色值。
<mx-list-select bgColor="#f2f2f2" />自定义事件
事件:bind:list_select_change,变更事件,返回字段 type、index、value、item、options,返回选中的值,如果是多选则返回数组。字段 type 的值为 single 或 multiple。
事件:bind:list_select_firstIcon,标签前图标点击事件。
事件:bind:list_select_lastIcon,标签后图标点击事件。
<mx-list-select
bind:list_select_change="handleChange"
bind:list_select_firstIcon="handleFirstIcon"
bind:list_select_lastIcon="handleLastIcon"
/>参数
| 参数 | 类型 | 必填 | 可选值 | 默认值 | 参数描述 |
|---|---|---|---|---|---|
| type | String | 是 | single 单选、multiple 多选 |
single |
类型 |
| options | Array | 是 | 数据项 | ||
| singleIcon | String | 是 | default、radio |
default |
单选框样式 |
| multipleIcon | String | 是 | default、checkbox |
default |
复选框样式 |
| iconColor | String | 颜色值 | #040A23 |
单选框/复选框颜色,支持任何合法的颜色值 | |
| iconSize | Number | 数字 | 48 |
单选框/复选框大小,不带单位,默认使用rpx | |
| textColor | String | 颜色值 | #040A23 |
文本颜色,支持任何合法的颜色值 | |
| textSelectColor | String | 颜色值 | #040A23 |
文本选中颜色,支持任何合法的颜色值 | |
| desc | String | 描述或错误文案 | |||
| descColor | String | 颜色值 | #656979 |
描述或错误文案颜色,支持任何合法的颜色值 | |
| label | String | 标签文案 | |||
| labelColor | String | 颜色值 | 标签文案文本色,任何合法的颜色值 | ||
| required | Boolean | true、false |
false |
是否必填 | |
| requiredPosition | String | left、right |
right |
必填星号位置 | |
| firstIcon | Object | 标签前图标配置 | |||
| lastIcon | Object | 标签后图标配置 | |||
| bgColor | String | 颜色值 | #FFFFFF |
背景色,支持任何合法的颜色值 |
firstIcon
| 参数 | 类型 | 默认值 | 参数描述 |
|---|---|---|---|
| iconName | String | 图标名称,只支持图标库中图标 | |
| iconColor | String | #040A23 |
图标颜色,任何合法的颜色值 |
| iconUrl | String | 图标图片地址,传入则 iconName、iconColor 无效 |
|
| iconSize | Number | 48 |
图标大小,不带单位,默认rpx |
lastIcon
| 参数 | 类型 | 默认值 | 参数描述 |
|---|---|---|---|
| iconName | String | 图标名称,只支持图标库中图标 | |
| iconColor | String | #9AA0B1 |
图标颜色,任何合法的颜色值 |
| iconUrl | String | 图标图片地址,传入则 iconName、iconColor 无效 |
|
| iconSize | Number | 32 |
图标大小,不带单位,默认rpx |
事件
| 事件名称 | 类型 | 返回值 | 事件说明 |
|---|---|---|---|
| bind:list_select_change | Change | event.detail |
变更事件,返回字段 type、index、value、item、options,返回选中的值,多选为数组;字段 type 的值为 single 或 multiple |
| bind:list_select_firstIcon | Click | 标签前图标点击事件 | |
| bind:list_select_lastIcon | Click | 标签后图标点击事件 |
其他说明
无