跳到主要内容

多选框 Checkbox

多选框

用法示例

ti-checkbox 示例

单独使用

组件附带文字内容

<ti-checkbox></ti-checkbox>
<ti-checkbox label="文字内容"></ti-checkbox>
<ti-checkbox>文字内容</ti-checkbox>

默认选中状态

当设置 checked 时为受控模式,多选框的选中状态将由使用者控制,当设置 default-checked时为非受控模式,选中状态将由组件内部控制。默认为非受控模式。

<ti-checkbox label="默认非受控模式"></ti-checkbox>
<ti-checkbox label="默认选中,受控模式" checked></ti-checkbox>
<ti-checkbox label="默认选中,非受控模式" default-checked></ti-checkbox>

禁用多选框点击效果

当设置 disabled 时, 组件将禁用组件的图标和文字的点击切换效果,当设置 label-disabled 时将禁用文字的点击效果,实现更细粒的控制。

<ti-checkbox label="禁用全部点击效果" disabled></ti-checkbox>
<ti-checkbox label="禁用文字点击效果" label-disabled></ti-checkbox>

修改多选框的圆角度数

多选框可自定义边框角度,支持方形(square)、圆形(circle)和自定义角度,默认为圆形

当自定义角度时,单位为px

<ti-checkbox label="方型" shape="square"></ti-checkbox>
<ti-checkbox label="圆型" shape="circle"></ti-checkbox>
<ti-checkbox label="自定义角度" shape="4"></ti-checkbox>

组件图标设置

多选框支持自定义组件图标, 图标大小,图标颜色等。

<ti-checkbox label="默认图标" default-checked></ti-checkbox>
<ti-checkbox label="自定义图标大小" size="64" default-checked></ti-checkbox>
<ti-checkbox label="自定义图标" icon="plus" default-checked></ti-checkbox>

监听多选框选中状态变化

code
<ti-checkbox id="checkbox" label="监听切换状态变化"></ti-checkbox>

ti-checkbox-button 示例

基本使用

组件附带文字内容

<ti-checkbox-button label="复选按钮文字"></ti-checkbox-button>
<ti-checkbox-button>复选按钮文字</ti-checkbox-button>

默认选中状态

当设置 checked 时为受控模式,多选按钮的选中状态将由使用者控制,当设置 default-checked 时为非受控模式,选中状态将由组件内部控制。默认为非受控模式。

<ti-checkbox-button label="默认选中" checked></ti-checkbox-button>
<ti-checkbox-button label="默认选中" default-checked></ti-checkbox-button>

组件内容设置

多选按钮支持自定义前后内容,图标等。

<ti-checkbox-button label="设置右侧图标" icon="sort-inactive"></ti-checkbox-button>
<ti-checkbox-button label="自定义左侧内容">
<ti-image
ext-style="margin-right: 6px"
slot="prefix"
width="40"
radius="0"
height="40"
src="https://image-c-dev.weimobwmc.com/qa-On6X/8b97cd488593474ba4a8ccaa3c1a493f.png"
></ti-image>
</ti-checkbox-button>
<ti-checkbox-button label="自定义右侧内容">
<ti-image
ext-style="margin-left: 6px"
slot="suffix"
width="40"
radius="0"
height="40"
src="https://image-c-dev.weimobwmc.com/qa-On6X/8b97cd488593474ba4a8ccaa3c1a493f.png"
></ti-image>
</ti-checkbox-button>

改变多选按钮颜色

多选按钮默认根据主题色变化,如需改变按钮颜色可参考下面示例

code
<ti-checkbox-button label="通过属性更改颜色" color="#2a6ae9" default-checked></ti-checkbox-button>
<div class="custom-color">
<ti-checkbox-button label="通过 css 变量更改颜色" default-checked></ti-checkbox-button>
</div>

监听多选按钮选中状态变化

code
<ti-checkbox-button label="监听切换状态变化" id="checkbox-button"></ti-checkbox-button>

ti-checkbox-group 示例

基本使用

<ti-checkbox-group>
<ti-checkbox label="文字内容-1" value="1"></ti-checkbox>
<ti-checkbox label="文字内容-2" value="2"></ti-checkbox>
<ti-checkbox label="文字内容-3" value="3"></ti-checkbox>
</ti-checkbox-group>
<ti-checkbox-group>
<ti-checkbox-button label="文字内容-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="文字内容-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="文字内容-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

禁用所有多选框点击效果

当设置 disabled 时, 子组件将禁用组件的图标和文字的点击切换效果,当设置 label-disabled 时将禁用子组件文字的点击效果,实现更细粒的控制。

<ti-checkbox-group disabled>
<ti-checkbox label="整体禁用点击-1" value="1"></ti-checkbox>
<ti-checkbox label="整体禁用点击-2" value="2"></ti-checkbox>
<ti-checkbox label="整体禁用点击-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group label-disabled>
<ti-checkbox label="文字禁用点击-1" value="1"></ti-checkbox>
<ti-checkbox label="文字禁用点击-2" value="2"></ti-checkbox>
<ti-checkbox label="文字禁用点击-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group disabled>
<ti-checkbox-button label="禁用点击效果-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="禁用点击效果-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="禁用点击效果-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

设置多选框组合中的选中值

code
<ti-checkbox-group id="ti-checkbox-button1">
<ti-checkbox label="受控模式-1" value="1"></ti-checkbox>
<ti-checkbox label="受控模式-2" value="2"></ti-checkbox>
<ti-checkbox label="受控模式-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group id="ti-checkbox-button2">
<ti-checkbox-button label="受控模式-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="受控模式-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="受控模式-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

<ti-checkbox-group id="ti-checkbox-button3">
<ti-checkbox label="非受控模式-1" value="1"></ti-checkbox>
<ti-checkbox label="非受控模式-2" value="2"></ti-checkbox>
<ti-checkbox label="非受控模式-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group id="ti-checkbox-button4">
<ti-checkbox-button label="非受控模式-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="非受控模式-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="非受控模式-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

使用 options 创建多选框

此模式只支持创建 ti-checkbox

code
<ti-checkbox-group id="ti-checkbox-group"></ti-checkbox-group>

监听多选组合中选中状态变化

code
<ti-checkbox-group id="checkbox-group">
<ti-checkbox label="监听切换状态变化-1" value="1"></ti-checkbox>
<ti-checkbox label="监听切换状态变化-2" value="2"></ti-checkbox>
<ti-checkbox label="监听切换状态变化-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group id="checkbox-button-group">
<ti-checkbox-button label="监听切换状态变化-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="监听切换状态变化-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="监听切换状态变化-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

设置最大选中数量

code
<ti-checkbox-group max="2" id="max-checkbox-group">
<ti-checkbox label="监听切换状态变化-1" value="1"></ti-checkbox>
<ti-checkbox label="监听切换状态变化-2" value="2"></ti-checkbox>
<ti-checkbox label="监听切换状态变化-3" value="3"></ti-checkbox>
</ti-checkbox-group>

<ti-checkbox-group max="2" id="max-checkbox-button-group">
<ti-checkbox-button label="监听切换状态变化-1" value="1"></ti-checkbox-button>
<ti-checkbox-button label="监听切换状态变化-2" value="2"></ti-checkbox-button>
<ti-checkbox-button label="监听切换状态变化-3" value="3"></ti-checkbox-button>
</ti-checkbox-group>

ti-checkbox API

属性 Properties

名称类型必填默认值说明备注
labelstring-文字内容-
valuestring-标识 Checkbox 名称-
checkedbooleanfalse指定当前是否选中, 此模式下为控制型组件-
default-checkedbooleanfalse初始是否选中, 此模式下为非控制型组件-
disabledbooleanfalse是否禁用-
label-disabledbooleanfalse文字区域是否禁用-
shapesquare | circle | numbercircle多选框形状-
iconstring-自定义图标名称-
sizenumber-自定义图标尺寸-
colorstring-自定义图标颜色-
ext-stylestring-根节点额外扩展样式-

事件 Events

名称参数列表描述备注
change(e: CustomEvent<boolean>) => void多选框选中时触发的事件当被 ti-checkbox-group 包裹时,只有 ti-checkbox-groupchange 会被触发

插槽 Slots

名称说明备注
icon图标插槽icon="{{false}}"时,使用此插槽

可扩展样式名 External Class

名称说明备注
ext-class根节点可扩展的类名-
icon-classicon 可扩展的类名-

CSS 变量 CSS Variables

变量默认值说明备注
--checkbox-radiustheme.borderRadius.round圆角-
--checkbox-gaptheme.spacing.gap.g3文字与图标间距-
--checkbox-padding-vtheme.spacing.vertical.v0上下Padding-
--checkbox-padding-htheme.spacing.horizontal.h0左右Padding-
--checkbox-label-colortheme.color.gray.texticon.900Label文字,颜色-
--checkbox-directionrow--
--checkbox-icon-colortheme.color.brand.1000背景颜色-
--checkbox-icon-revert-colortheme.color.gray.texticon.invert--
--checkbox-icon-wrap-padding-v0--
--checkbox-icon-wrap-padding-h0--
--checkbox-label-font-sizetheme.fontSize.t6Label文字,字号-
--checkbox-label-font-weighttheme.fontWeight.regularLabel文字,字重-
--checkbox-label-line-heighttheme.lineHeight.single.t6Label文字,行高-
--checkbox-icon-border-colortheme.color.gray.border.100图标 border 颜色-

ti-checkbox-button API

属性 Properties

名称类型必填默认值说明备注
labelstring-文字内容-
valuestring-标识 Checkbox 名称-
checkedbooleanfalse指定当前是否选中, 此模式下为控制型组件-
default-checkedbooleanfalse初始是否选中, 此模式下为非控制型组件-
disabledbooleanfalse是否禁用-
iconstring-自定义右侧图标名称-
left-iconstring-自定义左侧图标名称-
colorstring-自定义图标颜色-
ext-stylestring-根节点额外扩展样式-

事件 Events

名称参数列表描述备注
onchange(e: CustomEvent<boolean>) => void多选框选中时发生的回调当被 ti-checkbox-group 包裹时,只有 ti-checkbox-groupchange 会被触发

插槽 Slots

名称说明备注
prefix自定义文字前面内容-
suffix自定义文字后面内容-

可扩展样式名 External Class

名称说明备注
ext-class根节点可扩展的类名-

CSS 变量 CSS Variables

变量默认值说明备注
--checkbox-button-height56px--
--checkbox-button-padding-v0--
--checkbox-button-padding-h0--
--checkbox-button-text-colortheme.color.gray.texticon.550按钮内部文字,颜色(未选中)-
--checkbox-button-disabled-text-colortheme.color.gray.texticon.250按钮内部文字,颜色(disable)-
--checkbox-button-disabled-border-colortheme.color.brand.300按钮描边色(disable)-
--checkbox-button-bg-colortheme.color.gray.background.20按钮背景色(未选中)-
--checkbox-button-paddingtheme.spacing.horizontal.h3 theme.spacing.vertical.v5按钮内部Padding-
--checkbox-button-radiustheme.borderRadius.r2按钮圆角-
--checkbox-button-checked-bg-colortheme.color.brand.100按钮背景色(选中)-
--checkbox-button-checked-border-colortheme.color.brand.300按钮描边色(选中)-
--checkbox-button-checked-text-colortheme.color.brand.1000按钮内部文字,颜色(选中)-
--checkbox-button-font-sizetheme.fontSize.t5按钮内部文字字号-
--checkbox-button-font-weighttheme.fontWeight.regular按钮内部文字字重-
--checkbox-button-line-heighttheme.lineHeight.multiline.t2按钮内部文字行高-

ti-checkbox-group API

属性 Properties

名称类型是否必填默认值说明备注
valueArray<string | number >-用于设置当前选中的值-
default-valueArray<string | number >-默认选中的值-
disabledbooleanfalse指定当前是否禁用-
directionhorizontal | verticalhorizontal排列方向-
shapecircle | squarecircle图标形状,可选值为 circle、square-
label-disabledbooleanfalse是否禁用文本点击效果-
iconstring-自定义图标名称-
optionsstring | Record<string, string>-以配置形式设置子元素-
sizenumber-自定义图标尺寸-
colorstring-自定义图标颜色-
maxnumberNumber.MAX_SAFE_INTEGER最大选中数量-
ext-stylestring-根节点额外扩展样式属性值如果是带单位的话,要带上单位,如:{margin: '10px'}

Options

interface Option {
label: string;
value: string;
disabled?: boolean;
}

事件 Events

名称参数列表描述备注
onchange(e: CustomEvent<boolean>) => void多选框选中时发生的回调-
handleMax(e: CustomEvent<never>) => void达到最大值时发生的回调-

可扩展样式名 External Class

类名说明备注
ext-class扩展样式类名-