uni-app IOS input textarea 输入框输入韩文会自动闪烁删除

uni-app IOS input textarea 输入框输入韩文会自动闪烁删除

开发环境 版本号 项目创建方式
Windows 10 HBuilderX
iOS IOS 14

示例代码:

<input :adjust-position="false" type="text" placeholder="请输入关键词" confirm-type="search" v-model="key" />
<script>
export default {
	components: {},
	data() {
		return {
			key: "",
		}
	},
}
</script>

操作步骤:

  • 输入框 打韩文时

预期结果:

  • 输入框 和打中文 英文 一样

实际结果:

  • 输入 时候 自动 闪烁 删除

bug描述:

IOS 输入框 输入 韩文 会 自动 删除 几个字 闪烁删除 ,中文 英文没事


更多关于uni-app IOS input textarea 输入框输入韩文会自动闪烁删除的实战教程也可以访问 https://www.itying.com/category-93-b0.html

11 回复

全国职业技能大赛test

更多关于uni-app IOS input textarea 输入框输入韩文会自动闪烁删除的实战教程也可以访问 https://www.itying.com/category-93-b0.html


举报一手

输入韩文时候 input 用 v-model 绑定 文字闪烁 删除 打几个字 就删除 一两个字

这里有视频 附件

使用 :value + @input 延迟赋值 能好很多 但是 文件 太多了 改的话 很费时间 还不够完美 官方能 修复吗

是不是只要页面简单就没有此问题,页面复杂才出现?

都有 这个问题 输入韩文 简单的搜索页 也这样

bug 确认,已加分,新版已修复
临时解决方案,替换 view.umd.min.js 到 HBuilderX-Alpha(2.1.19+).app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/uni-app-plus/dist/view.umd.min.js

都2022年5月23日了,还没有更新到官方版本,真是蛋疼。

回复 8***@qq.com: 更了更了

这是一个已知的iOS系统与uni-app输入框组件在韩文输入法下的兼容性问题。主要原因是韩文组合输入过程中,iOS系统与uni-app的输入事件处理机制存在时序冲突。

问题分析:

  1. 韩文属于组合型文字,输入时需要经过多个按键组合才能完成一个字符
  2. iOS系统在韩文输入时会频繁触发compositionstart、compositionupdate、compositionend事件
  3. uni-app的input组件在处理这些事件时,v-model的双向绑定可能导致值更新异常

解决方案:

  1. 使用textarea替代input(推荐)
<textarea 
  :adjust-position="false" 
  placeholder="请输入关键词" 
  confirm-type="search" 
  v-model="key"
></textarea>
  1. 手动处理输入事件
<input 
  :adjust-position="false" 
  type="text" 
  placeholder="请输入关键词" 
  confirm-type="search" 
  :value="key"
  @input="handleInput"
  @compositionstart="composing = true"
  @compositionend="handleCompositionEnd"
/>
export default {
  data() {
    return {
      key: "",
      composing: false
    }
  },
  methods: {
    handleInput(e) {
      if (!this.composing) {
        this.key = e.detail.value
      }
    },
    handleCompositionEnd(e) {
      this.composing = false
      this.key = e.detail.value
    }
  }
}
回到顶部