From 2050644546efdedc7e2b330d0a40f240b62df329 Mon Sep 17 00:00:00 2001 From: danranvm Date: Sat, 12 Mar 2022 15:44:34 +0800 Subject: [PATCH] fix(comp:select): trige handleInput when onCompositionEnd fix #786 --- packages/components/input/src/useInput.ts | 6 +++--- .../components/select/src/composables/useInputState.ts | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/components/input/src/useInput.ts b/packages/components/input/src/useInput.ts index dec773f9d..43ebd1f3c 100644 --- a/packages/components/input/src/useInput.ts +++ b/packages/components/input/src/useInput.ts @@ -72,8 +72,8 @@ export function useInput( watch(accessor.valueRef, () => syncValue()) const isComposing = ref(false) - const handleInput = (evt: Event) => { - callEmit(props.onInput, evt) + const handleInput = (evt: Event, emitInput = true) => { + emitInput && callEmit(props.onInput, evt) if (isComposing.value) { return } @@ -96,7 +96,7 @@ export function useInput( callEmit(props.onCompositionEnd, evt) if (isComposing.value) { isComposing.value = false - handleInput(evt) + handleInput(evt, false) } } diff --git a/packages/components/select/src/composables/useInputState.ts b/packages/components/select/src/composables/useInputState.ts index 32fecf968..a960feaee 100644 --- a/packages/components/select/src/composables/useInputState.ts +++ b/packages/components/select/src/composables/useInputState.ts @@ -58,14 +58,15 @@ export function useInputState( } const handleCompositionEnd = (evt: CompositionEvent) => { + callEmit(props.onCompositionEnd, evt) if (isComposing.value) { isComposing.value = false + handleInput(evt, false) } - callEmit(props.onCompositionEnd, evt) } - const handleInput = (evt: Event) => { - callEmit(props.onInput, evt) + const handleInput = (evt: Event, emitInput = true) => { + emitInput && callEmit(props.onInput, evt) if (isComposing.value) { return }