1.为textarea设置value属性与cursor属性,通过bindinput属性动态修改value值后,光标自动跳到句子末尾,没有按预期的cursor值调整。
2.安卓支持bindinput的返回值。ios不支持
对第一个问题做一个最简单的demo,代码如下。
<!--index.wxml--> < view style = "padding:50rpx 50rpx" >
< view > 已输入{{content.length}}个字符 </ view > </ view > |
//index.js //获取应用实例 const app = getApp() Page({ data: { cursorValue: 2, content: '这是一个默认内容' , }, inputValue: function (e) { console.log( 'input value invoke' ); console.log(e); const data = e.detail.value; // 写入值后第一次设置cursor。 // 无效 this .setData({ cursorValue: 2, content: data, }); setTimeout(() => { // 排除是异步的原因 this .setData({ cursorValue: 2, }); console.log( '设置了cursorValue' ); // 但是结果依然无效。 }, 2000); }, }) |
将cursor的值锁定在第二个位置。实际上并没有用。
测试机型:
开发工具上测试有问题。
手机机型信息如下:
你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码示例。
请问怎么解决,我也遇到了这个问题,而且无法规避,我们的业务需求是语音输入转文字赋值到textarea,如果转的文字不对是支持修改的,然后现在是每点一下光标就会跳到最后
最后没有解决,后来用input了。当然,现在已经不开发小程序了。。。
哈哈哈,看来是彻底弃坑了~
已更新,@黄思程,能帮忙看下吗?