uni-app nvue模式下 textarea 使用v-model导致输入法无法联想词连打 手写输入和笔画输入也无法使用

uni-app nvue模式下 textarea 使用v-model导致输入法无法联想词连打 手写输入和笔画输入也无法使用

开发环境 版本号 项目创建方式
Windows win10 HBuilderX
# 示例代码:

```html
<textarea v-model="value"></textarea>

操作步骤:

看描述

预期结果:

v-model双向绑定能正常使用且不会影响联想词连打,手写输入等

实际结果:

看描述

bug描述:

textarea,使用v-model在nvue模式的app下,输入法不能联想词连打,甚至影响手写输入、笔画输入完全不能用

只能抛弃使用v-model,换成使用:value绑定初始值,用@input自己监听值的变化


更多关于uni-app nvue模式下 textarea 使用v-model导致输入法无法联想词连打 手写输入和笔画输入也无法使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

14 回复

大佬,解决了吗?我的这边也是一样。

更多关于uni-app nvue模式下 textarea 使用v-model导致输入法无法联想词连打 手写输入和笔画输入也无法使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html


看一下提bug的时间,没人管的

回复 instant: 有的有的,同类问题的其他帖子已经有人在处理了。

HX3.2.10 alpha 已修复该问题

3.2.15 还是有这个问题

详细描述一下

使用:value 监听 也会 这样子的, 是不是 使用 e.detail.value

3.2.16 还是有这个问题

详细描述一下

回复 DCloud_UNI_GSQ: 完犊子,现在更新了新版,华为mate30 pro 5g,调试的时候可以,打包正式版就连英文都不能输入了,登录账号无法输。。。

回复 我不是大v: 试试 3.3.1

回复 DCloud_UNI_GSQ: 3.3.5也是,华为mate30 pro 正式包,登录页是nvue页面,输入账号的时候每个字母后都会自动带一个空格

回复 Liangzhihe: 建议你重新发帖 并提供具体demo示例 我们验证一下

这是 nvue 中 textarea 组件与 v-model 双向绑定的一个已知问题。由于 nvue 的渲染机制与 webview 不同,v-model 的实时数据同步在某些情况下会干扰输入法的正常工作。

问题原因:

  • nvue 中 v-model 的频繁数据更新会打断输入法的联想和组合过程
  • 特别是对于需要连续输入的输入法(如中文联想、手写、笔画),数据同步过于频繁会导致输入法状态重置

解决方案: 你提到的使用 :value + @input 手动处理是正确的做法:

<textarea 
  :value="value" 
  @input="onInput"
></textarea>
methods: {
  onInput(event) {
    this.value = event.detail.value
  }
}

进一步优化: 如果仍需要双向绑定的便利性,可以考虑使用防抖处理:

methods: {
  onInput: _.debounce(function(event) {
    this.value = event.detail.value
  }, 300)
}
回到顶部