nvue页面 <textarea>和<input>无法获取光标,对插入表情功能十分不友好。
<textarea>和<input>标签,只有@input可以获取当输入状态时时的光标,但是我手动移动光标不好使,比如说,我在
<textarea>标签打出 “ 插入表情 ”这几个字,利用@input我可以获取到结尾的光标,但是当我把光标手动点击到 “ 插入表情 ”的
中间,我就没有办法获取到当前光标了。
有什么好的解决思路吗?
<textarea v-if="flag" adjust-position class="input" maxlength='100' @keyboardheightchange="heightChange"
v-model="message" :placeholder="placeholder" :focus="true" @focus="onfocus" @input="oninput"></textarea>
//@input
oninput (event) {
console.log('oninput:', event)
this.cursor = event.detail.cursor //光标位置
},
//插入表情
selemoji(m) {
let mes = this.message
let arr = mes.split('');
arr.splice(this.cursor,0,m);
this.message = arr.join('');
console.log(this.message);
}
2 个回复
cbj44125
同样的问题困扰
2***@qq.com - QQ:2388817150
我也是试了一下,也是没有效果,困扰还比较急