pumpkin-ui
指南
组件
指南
组件
  • 基础组件

    • Button 按钮
    • Cell 单元格
    • Icon 图标
    • Popup 弹出层
    • Toast 轻提示
  • 表单组件

    • PickerView 选择器视图
    • Picker 选择器
    • DatePicker 日期时间选择器
    • Switch 开关
    • Field 输入项
    • Form 表单
    • Checkbox 复选框
    • Radio 单选框
  • 反馈组件

    • Overlay 遮罩
    • Loading 加载
    • ActionSheet 动作面板
    • Notify 消息提示
    • Skeleton 骨架屏
    • Dialog 对话框
  • 展示组件

    • Progress 进度条
    • Divider 分割线
    • Badge 徽标
    • Empty 空元素
    • Tag 标签

Checkbox 复选框

基本使用

<pk-checkbox-group>
    <pk-checkbox>复选框1</pk-checkbox>
    <pk-checkbox>复选框2</pk-checkbox>
</pk-checkbox-group>

代码示例

基础用法

创建复选框组。

template
    <pk-checkbox-group>
        <pk-checkbox>复选框1</pk-checkbox>
        <pk-checkbox>复选框2</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

方形

可通过设置square属性为true设置为方形。通过设置CheckboxGroup的square属性可改变子组件中Checkbox的形状。如果子组件单独设置了square属性或者group为false则以子组件的为准。

template
    <pk-checkbox-group square>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox :square="false">默认</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

禁用

可通过设置disabled属性为true设置为禁用。通过设置CheckboxGroup的disabled属性可设置子组件中Checkbox的禁用状态。如果子组件单独设置了disabled属性或者设置group为false则以子组件的为准。

template
    <pk-checkbox-group disabled>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox>方形</pk-checkbox>
        <pk-checkbox :disabled="false">默认</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

大小

可通过设置size属性设置为大小。通过设置CheckboxGroup的size属性可设置子组件的中size。如果子组件单独设置了size属性或者设置group为false则以子组件的为准。

template
    <pk-checkbox-group :size="30">
        <pk-checkbox>大小30</pk-checkbox>
        <pk-checkbox>大小30</pk-checkbox>
        <pk-checkbox>大小30</pk-checkbox>
        <pk-checkbox :size="20">大小20</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

最多选中

可通过设置CheckboxGroup的max属性设置最多选中的数量。

template
    <pk-checkbox-group :max="2">
        <pk-checkbox>选项一</pk-checkbox>
        <pk-checkbox>选项二</pk-checkbox>
        <pk-checkbox>选项三</pk-checkbox>
        <pk-checkbox>选项四</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

纵向排列

可通过设置CheckboxGroup的vertical为true实现。

template
    <pk-checkbox-group vertical>
        <pk-checkbox>选项一</pk-checkbox>
        <pk-checkbox>选项二</pk-checkbox>
        <pk-checkbox>选项三</pk-checkbox>
        <pk-checkbox>选项四</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'

style

默认值

可通过设置Checkbox的v-model为true实现。

template
    <pk-checkbox-group>
        <pk-checkbox v-model="firstChecked">选项一</pk-checkbox>
        <pk-checkbox>选项二</pk-checkbox>
        <pk-checkbox>选项三</pk-checkbox>
        <pk-checkbox>选项四</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'
import { ref } from 'vue';

const firstChecked = ref(true)

style

事件

template
    <pk-checkbox-group @on-change="onChange" @on-limit="onLimit" :max="2">
        <pk-checkbox label="选项一" :value="1" v-model="firstChecked">选项一</pk-checkbox>
        <pk-checkbox label="选项二" :value="2">选项二</pk-checkbox>
        <pk-checkbox label="选项三" :value="3">选项三</pk-checkbox>
        <pk-checkbox label="选项四" :value="4">选项四</pk-checkbox>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkDivider } from '@pumpkin-ui/mobile'
import { ref } from 'vue'

const firstChecked = ref(true)

const onChange = (value) => {
    Toast.show(JSON.stringify(value))
}
const onLimit = (value) => {
    Toast.show('最多只能选择两个')
}

style

API

Props

CheckboxGroup Props

属性名说明类型默认值可选值
size复选框的大小,单位为pxnumber
square方形复选框booleanfalse
disabled禁用状态booleanfalse
max最多选择的项数number
vertical纵向排列booleanfalse

Checkbox Props

属性名说明类型默认值可选值
v-model复选框选中状态booleanfalse
size复选框大小,单位为pxnumber
label复选框的文字string
square方形复选框booleanfalse
value复选框的值(类似于input的value)string| boolean |number
disabled禁用状态booleanfalse
group是否加入父级CheckGroupbooleantrue

Events

CheckboxGroup Events

事件名说明回调参数
onChange值变化时触发(value: ICheckboxValue[]) => void
onLimit达到max时,仍然选择未选中的复选框时触发(value: ICheckboxValue[]) => void

Checkbox Events

事件名说明回调参数
onChange值变化时触发(checked: boolean, value: ICheckboxValue)=>void
click选项被点击时触发(e: MouseEvent) => void
ICheckboxValue
属性名说明类型
checked是否选中boolean
value复选框的值boolean|string|number
label复选框的文字string

Slot

CheckboxGroup Slot

插槽名说明
default默认插槽

Checkbox Slot

插槽名说明作用域
icon复选框图标插槽checked:boolean
label复选框文字插槽
自定义图标
template
    <pk-checkbox-group>
        <pk-checkbox-group>
            <pk-checkbox label="选项一" :value="1">
                <template #icon>
                    <pk-icon name="alert-outlined" />
                </template>
            </pk-checkbox>
        </pk-checkbox-group>
    </pk-checkbox-group>
script
import { PkCheckbox, PkCheckboxGroup, PkIcon } from '@pumpkin-ui/mobile'
style

Exposes

CheckboxGroup Exposes

名称说明类型说明
getValues获取所有子项的值()=>ICheckboxValue[]
toggleAll切换复选框的选中状态,不传options则反选,传boolean则将所有子项切换为对应的选中状态(options?: ICheckboxGroupToggleAll | boolean)=>void
ICheckboxGroupToggleAll
属性名说明类型必选
skipDisabled跳过禁用的值boolean否
checked是否选中,不传则反选boolean否

CheckboxGroup 样式变量

名称默认值说明

Checkbox 样式变量

名称默认值说明
--pk-checkbox-size20px
--pk-checkbox-border-colorvar(--pk-border-color)
--pk-checkbox-active-backgroundvar(--pk-primary-color)
--pk-checkbox-active-color#ffffff
--pk-checkbox-label-colorvar(--pk-text-color)
--pk-checkbox-label-font-sizevar(--pk-font-size-s)
--pk-checkbox-marginvar(--pk-margin-m)
--pk-checkbox-icon-weight600
--pk-checkbox-disabled-opacityvar(--pk-disabled-opacity)
Last Updated:
Contributors: yranky
Prev
Form 表单
Next
Radio 单选框