UNPKG

nutui-uniapp

Version:

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

67 lines (62 loc) 1.51 kB
import type { ExtractPropTypes } from 'vue' import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../_constants' import { commonProps, isBoolean, isNumber, isString } from '../_utils' export const switchProps = { ...commonProps, /** * @description 开关状态 */ modelValue: { type: [String, Number, Boolean], default: false, }, /** * @description 禁用状态 * @deprecated 即将弃用,请使用`disabled` */ disable: Boolean, /** * @description 禁用状态 */ disabled: Boolean, /** * @description 打开时的背景颜色 */ activeColor: String, /** * @description 关闭时的背景颜色 */ inactiveColor: String, /** * @description 打开时文字描述 */ activeText: String, /** * @description 关闭时文字描述 */ inactiveText: String, /** * @description 打开时组件的值 */ activeValue: { type: [String, Number, Boolean], default: true, }, /** * @description 关闭组件的值 */ inactiveValue: { type: [String, Number, Boolean], default: false, }, /** * @description 加载状态 */ loading: Boolean, } export type SwitchProps = ExtractPropTypes<typeof switchProps> export const switchEmits = { [UPDATE_MODEL_EVENT]: (val: any) => isBoolean(val) || isNumber(val) || isString(val), [CHANGE_EVENT]: (val: any, evt?: Event) => (isBoolean(val) || isNumber(val) || isString(val)) && (evt instanceof Object), } export type SwitchEmits = typeof switchEmits