diff --git a/src/input-number/input-number.tsx b/src/input-number/input-number.tsx index 827a5edeff..c9b325f20e 100644 --- a/src/input-number/input-number.tsx +++ b/src/input-number/input-number.tsx @@ -1,13 +1,11 @@ -import { computed, defineComponent, ref, watch } from 'vue'; +import { computed, defineComponent } from 'vue'; import { AddIcon, RemoveIcon, ChevronDownIcon, ChevronUpIcon } from 'tdesign-icons-vue-next'; import TButton from '../button'; import TInput from '../input'; import props from './props'; -import { TdInputNumberProps } from './type'; // hooks import { usePrefixClass } from '../hooks/useConfig'; -import useInputNumberAction from './useInputNumberAction'; import useComponentComputed from './useComponentComputed'; export default defineComponent({ @@ -24,10 +22,18 @@ export default defineComponent({ setup(props) { const COMPONENT_NAME = usePrefixClass('input-number'); - const { reduceEvents, addEvents, componentWrapClasses, inputEvents, inputAttrs, displayValue, isError } = - useComponentComputed(COMPONENT_NAME, props); + const { + reduceEvents, + addEvents, + componentWrapClasses, + inputEvents, + inputAttrs, + displayValue, + addClasses, + reduceClasses, + handleInput, + } = useComponentComputed(COMPONENT_NAME, props); - const { addClasses, reduceClasses, handleInput } = useInputNumberAction(COMPONENT_NAME, props, isError); const decreaseIcon = computed(() => props.theme === 'column' ? : , ); diff --git a/src/input-number/useComponentComputed.ts b/src/input-number/useComponentComputed.ts index 63fbf16921..f1d7e515d7 100644 --- a/src/input-number/useComponentComputed.ts +++ b/src/input-number/useComponentComputed.ts @@ -26,9 +26,20 @@ export default function useComponentComputed(COMPONENT_NAME: Ref, props: const isError = ref(false); const inputting = ref(false); + const filterValue = ref(null); - const { digitsNum, innerValue, filterValue, handleAction, clearFilterValue, handleReduce, handleAdd, userInput } = - useInputNumberAction(COMPONENT_NAME, props, isError); + const { + digitsNum, + innerValue, + handleAction, + clearFilterValue, + handleReduce, + handleAdd, + userInput, + addClasses, + reduceClasses, + handleInput, + } = useInputNumberAction(COMPONENT_NAME, props, isError, filterValue); const inputNumberTools = useInputNumberTools(props, digitsNum, isError); const keyboardEvents = useKeyboardEvents(props, innerValue); @@ -126,6 +137,8 @@ export default function useComponentComputed(COMPONENT_NAME: Ref, props: inputEvents, inputAttrs, displayValue, - isError, + addClasses, + reduceClasses, + handleInput, }; } diff --git a/src/input-number/useInputNumberAction.ts b/src/input-number/useInputNumberAction.ts index a61dbff81a..0901131c02 100644 --- a/src/input-number/useInputNumberAction.ts +++ b/src/input-number/useInputNumberAction.ts @@ -10,9 +10,9 @@ export default function useInputNumberAction( COMPONENT_NAME: Ref, props: TdInputNumberProps, isError: Ref, + filterValue: Ref, ) { const { STATUS } = useCommonClassName(); - const filterValue = ref(null); const userInput = ref(null); const { value, modelValue } = toRefs(props); const [innerValue, setInnerValue] = useVModel(value, modelValue, props.defaultValue, props.onChange);