element-plus [Component] [input] compositionend event not call when autofill form done

yjghlzjz  于 5个月前  发布在  其他
关注(0)|答案(2)|浏览(63)

Bug Type: Component

Environment

  • Vue Version: 3.3.4
  • Element Plus Version: 2.3.10
  • Browser / OS: Chrome/115.0.0.0 / macOS 13.0
  • Build Tool: Vite

Reproduction

  • el-input

Element Plus Playground

Steps to reproduce

  • 谷歌浏览器设置->自动填充和密码->地址和其他信息->添加
  • 用中文输入法输入首字母,直接点击自动填充控件,就出现bug效果

What is Expected?

v-mode会同步更新

What is actually happening?

v-model没有更新

Additional comments

目前发现el-input组件处理input事件时,选择自动填充表单后,没有触发 compositionend 事件,导致调用 handleInput 处理函数时 isComposing.value 一直为 true 直接return掉了
autofill-bug.mov

n1bvdmb6

n1bvdmb61#

遇到了同样的问题。老哥有解决办法吗

qgelzfjb

qgelzfjb2#

仍然会触发change 事件,复制可以在change事件里面就可以hack了
通过 Email填充时能正常赋值,通过name 填充时name赋值失败
样例代码

相关问题