@@ -346,14 +346,14 @@ export default defineComponent({
346346 . slice ( 0 , max . value || Infinity ) ,
347347 { e, trigger : isAllOptionsChecked . value ? 'uncheck' : 'check' } ,
348348 ) ;
349- ! reserveKeyword ?. value && setTInputValue ( '' ) ;
349+ ! reserveKeyword ?. value && setTInputValue ( '' , { e , trigger : 'change' } ) ;
350350 } ;
351351
352- const handleCreate = ( ) => {
352+ const handleCreate = ( e : KeyboardEvent ) => {
353353 if ( ! tInputValue . value ) return ;
354354 const createVal = tInputValue . value ;
355355 // 只有多选情况下需要帮用户清除一次输入框内容,单选场景选中后 popup 消失,携带内容清除的作用
356- multiple . value && setTInputValue ( '' ) ;
356+ multiple . value && setTInputValue ( '' , { e , trigger : 'change' } ) ;
357357 instance . emit ( 'create' , createVal ) ;
358358 props . onCreate ?.( createVal ) ;
359359 } ;
@@ -371,7 +371,7 @@ export default defineComponent({
371371
372372 const handleTInputValueChange = ( val : string , context : SelectInputValueChangeContext ) => {
373373 if ( context . trigger === 'blur' || ! innerPopupVisible . value ) return ;
374- setTInputValue ( val ) ;
374+ setTInputValue ( val , context ) ;
375375 debounceSearch ( { e : context . e as KeyboardEvent } ) ;
376376 } ;
377377
@@ -529,7 +529,7 @@ export default defineComponent({
529529 case 'Enter' :
530530 // 当支持创建、且 hoverIndex 为 -1(未选中)/0(创建条目)、第一项为创建项的时候,才视为触发 create 回调,并继续键盘事件
531531 if ( creatable . value && hoverIndex . value < 1 && displayOptions ?. [ 0 ] ?. isCreated ) {
532- handleCreate ( ) ;
532+ handleCreate ( e ) ;
533533 } else if ( hoverIndex . value === - 1 ) {
534534 // 否则视为选择列表中筛选出的已有项目
535535 // 当 hoverIndex 为 -1,即未选中任意项的时候,不触发其他键盘事件
@@ -554,7 +554,7 @@ export default defineComponent({
554554 case 'Escape' :
555555 case 'Tab' :
556556 setInnerPopupVisible ( false , { trigger : 'keydown-esc' , e } ) ;
557- setTInputValue ( '' ) ;
557+ setTInputValue ( '' , { e , trigger : 'blur' } ) ;
558558 break ;
559559 }
560560 } ;
@@ -576,7 +576,7 @@ export default defineComponent({
576576 // 显示 popup 的时候重置 hover 选项下标
577577 hoverIndex . value = - 1 ;
578578 } else {
579- tInputValue . value && setTInputValue ( '' ) ;
579+ tInputValue . value && setTInputValue ( '' , { trigger : 'blur' } ) ;
580580 }
581581 } ) ;
582582 provide ( 'tSelect' , {
0 commit comments