UNPKG

nutui-uniapp

Version:

京东风格的轻量级移动端 Uniapp、Vue3 组件库(支持小程序开发)

40 lines (34 loc) 1.13 kB
import type { ExtractPropTypes } from 'vue' import { commonProps, isArray, makeArrayProp, makeNumberProp } from '../_utils' import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../_constants' export const checkboxgroupProps = { ...commonProps, /** * @description 当前选中项的标识符,和 `label` 相对应 */ modelValue: makeArrayProp<any>([]), /** * @description 是否禁用选择,将用于其下的全部复选框 */ disabled: Boolean, /** * @description 限制选择的数量,不能和全选/取消/反选一起使用, 0表示没有限制 */ max: makeNumberProp(0), } export type CheckboxGroupProps = ExtractPropTypes<typeof checkboxgroupProps> export const checkboxgroupEmits = { [CHANGE_EVENT]: (val: any[]) => val instanceof Object, [UPDATE_MODEL_EVENT]: (val: any[]) => isArray(val), } export type CheckboxGroupEmits = typeof checkboxgroupEmits export interface CheckBoxInst { /** * @description 全选/取消 传 true,表示全选,传 false,表示取消全选 */ toggleAll: (val: boolean) => void /** * @description 反选 */ toggleReverse: () => void }