feat: udpate switch ts

pull/4346/head
tangjinzhou 2021-07-07 22:09:09 +08:00
parent 292f5c9d75
commit cf2ffa2bd9
2 changed files with 15 additions and 9 deletions

View File

@ -11,7 +11,7 @@ import Omit from 'omit.js';
import useConfigInject from '../_util/hooks/useConfigInject'; import useConfigInject from '../_util/hooks/useConfigInject';
export const SwitchSizes = tuple('small', 'default'); export const SwitchSizes = tuple('small', 'default');
type CheckedType = boolean | string | number;
const switchProps = { const switchProps = {
prefixCls: PropTypes.string, prefixCls: PropTypes.string,
size: PropTypes.oneOf(SwitchSizes), size: PropTypes.oneOf(SwitchSizes),
@ -21,14 +21,20 @@ const switchProps = {
tabindex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), tabindex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
autofocus: PropTypes.looseBool, autofocus: PropTypes.looseBool,
loading: PropTypes.looseBool, loading: PropTypes.looseBool,
checked: PropTypes.any, checked: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.looseBool]),
checkedValue: PropTypes.any.def(true), checkedValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.looseBool]).def(
unCheckedValue: PropTypes.any.def(false), true,
),
unCheckedValue: PropTypes.oneOfType([
PropTypes.string,
PropTypes.number,
PropTypes.looseBool,
]).def(false),
onChange: { onChange: {
type: Function as PropType<(checked: any, e: Event) => void>, type: Function as PropType<(checked: CheckedType, e: Event) => void>,
}, },
onClick: { onClick: {
type: Function as PropType<(checked: any, e: Event) => void>, type: Function as PropType<(checked: CheckedType, e: Event) => void>,
}, },
onKeydown: { onKeydown: {
type: Function as PropType<(e: Event) => void>, type: Function as PropType<(e: Event) => void>,
@ -37,7 +43,7 @@ const switchProps = {
type: Function as PropType<(e: Event) => void>, type: Function as PropType<(e: Event) => void>,
}, },
'onUpdate:checked': { 'onUpdate:checked': {
type: Function as PropType<(checked: any) => void>, type: Function as PropType<(checked: CheckedType) => void>,
}, },
}; };
@ -92,7 +98,7 @@ const Switch = defineComponent({
}); });
}); });
const setChecked = (check: any, e: MouseEvent | KeyboardEvent) => { const setChecked = (check: CheckedType, e: MouseEvent | KeyboardEvent) => {
if (props.disabled) { if (props.disabled) {
return; return;
} }

2
v2-doc

@ -1 +1 @@
Subproject commit 89612874e476dc788711cdaedfd037b9497e5e78 Subproject commit b9934e0de1052a73978cdb9fb401fa7b5eaf8ecc