From bdabdaa4b26ec0b7c7993a1e7da352116ff971d3 Mon Sep 17 00:00:00 2001 From: z__z <1007024452@qq.com> Date: Thu, 16 Dec 2021 16:10:14 +0800 Subject: [PATCH] =?UTF-8?q?Cascader:=20multiple=20&&=20filterable=EF=BC=8C?= =?UTF-8?q?=E5=9C=A8=E6=9C=89=20tag=20=E7=9A=84=E6=97=B6=E5=80=99=EF=BC=8C?= =?UTF-8?q?=E8=BE=93=E5=85=A5=E6=8B=BC=E9=9F=B3=E6=8C=89=20delete=20?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=EF=BC=8C=E4=BC=9A=E6=8A=8A=20tag=20?= =?UTF-8?q?=E5=88=A0=E6=8E=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/cascader/src/cascader.vue | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/cascader/src/cascader.vue b/packages/cascader/src/cascader.vue index 0546fc4ab..ad4a259a5 100644 --- a/packages/cascader/src/cascader.vue +++ b/packages/cascader/src/cascader.vue @@ -62,7 +62,9 @@ :placeholder="presentTags.length ? '' : placeholder" @input="e => handleInput(inputValue, e)" @click.stop="toggleDropDownVisible(true)" - @keydown.delete="handleDelete"> + @keydown.delete="handleDelete" + @compositionstart="handleCompositionstart" + @compositionend="handleCompositionend"> @@ -240,7 +242,8 @@ export default { filtering: false, suggestions: [], inputInitialHeight: 0, - pressDeleteCount: 0 + pressDeleteCount: 0, + spell: false }; }, @@ -436,6 +439,12 @@ export default { handleBlur(e) { this.$emit('blur', e); }, + handleCompositionstart() { + this.spell = true; + }, + handleCompositionend(e) { + this.spell = false; + }, handleInput(val, event) { !this.dropDownVisible && this.toggleDropDownVisible(true); @@ -579,6 +588,7 @@ export default { } }, handleDelete() { + if (this.spell) return; const { inputValue, pressDeleteCount, presentTags } = this; const lastIndex = presentTags.length - 1; const lastTag = presentTags[lastIndex];