uview2.0 u-textarea设置maxlength在手机上粘贴字数超过限制时统计字数会超过限制字数

2023-12-14 12:02:52

问题:使用uniapp开发小程序时候,用了uview2.0组件库,有个需求就是文本输入框要限制100个文字,看了下uview2.0文档,发现u-textarea组件内置了这个功能,只需要在组件上添加count 和 maxlength属性即可,看起来好像很简单,我添加完后,在微信开发者工具上自测确实没有问题,但在手机上测试就发现了bug,当粘贴字数超过限制时统计字数会超过限制字数,虽然文本确实被限制在了100以内,但那个统计当前字数的数字会超过限制,即会出现 102/100的现象,如下图所示:
在这里插入图片描述
这个问题一出现我立马就觉得是uview的bug,看了下github,确实有网友给uview提了这个bug,但看这样子官方好像还是没有解决,看来只能靠自己解决了呀。考虑到自己再去写个textarea组件的话觉得麻烦,我又是一个比较懒的人。。。
于是我就去翻了下这个组件的源码,发现它当前字数的统计是直接使用了输入的文字的length属性:
在这里插入图片描述
那么问题就是出现在这里啦,不能说文本一输入就使用它的length,得先做判断啊。翻阅官方文档,发现有个formatter方法,这个方法是用于处理或者过滤输入框内容的方法,那么我们就可以在这个方法上做文章了,只要文本超过了100,那么就截取100个字符就好了,

文章来源:https://blog.csdn.net/m0_50290552/article/details/134989738
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。