0.54与0.55版本react-native的TextInput在iOS上无法输入中文日文韩文的bug

更新最新版本的react-native,发现最近两版本的TextInput终于出现对ios的不友好。在官网查了下发现 0.54与0.55版本react-native的TextInput在iOS上无法输入中文日文韩文。
再翻看官方对TextInput的value解释,根本无效
value string #

文本框中的文字内容。

TextInput是一个受约束的(Controlled)的组件,意味着如果提供了value属性,原生值会被强制与value属性保持一致。在大部分情况下这都工作的很好,不过有些情况下会导致一些闪烁现象——一个常见的原因就是通过不改变value来阻止用户进行编辑。如果你希望阻止用户输入,可以考虑设置editable={false};如果你是希望限制输入的长度,可以考虑设置maxLength属性,这两个属性都不会导致闪烁。

完美解决apple/android兼容问题
import { Platform,} from 'react-native';
shouldComponentUpdate(nextProps,nextState){
if ( Platform . OS === 'ios' ){
if ( this . state . nickname !== nextState . nickname ){ //nickname为所要获得的 TextInput输入值,
return false ;
}
}
return true ;
};

希望对大家有所帮助,谢谢!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值