uni-easyinput input手动调用获取焦点办法以及

2024-03-11  本文已影响0人  吉凶以情迁

经过测试发现,focus有时候不能直接设置,调用onFocus()也不能一劳永逸,最后发现正确的办法如下:

直接外部调用focused=true即可,但是第二次会发现不起作用需要改下源码

_Blur加上 this.$set(this, 'focused', false);

_Focus加上 this.$set(this, 'focused', true);
为啥这么写

不这么写出现"set' on proxy: trap returned falsish for property" 的错误,
我这虽然是vue3,但是还是用的vue2的写法,,
错误原因:Vue3的响应式系统(基于Proxy)检测到了无效或不明确的赋值行为。

uniapp定义的input在实际运行后会变成封装的套壳,input在内部所以无法直接调用select()全选,

在移动端运行 没有document api(uni.也封装了query 元素节点的,感兴趣的朋友可以试试)
可以直接绑定select-startselect-end实现
而web 还也可以通过query 内部的input 调用select()实现

上一篇下一篇

猜你喜欢

热点阅读