TextInput组件添加提交操作筛选以防止意外行为。onSubmitEditing() 回调会触发多个键盘操作,包括显示和隐藏密码切换。如果不检查哪个操作触发了回调,则当用户仅切换密码可见性时,您的业务逻辑(例如连接到网络)可能会执行。
先决条件
确定您的应用是否受到影响
如果满足以下两个条件,则您的应用需要此修复:- 您使用
TextInput组件,将keyboardType设置为password,并在键盘用户界面中显示/隐藏密码按钮。 - 您在不检查
e.nativeEvent.submitAction的值的情况下处理onSubmitEditing()。
添加submitAction检查
在运行业务逻辑之前,通过检查e.nativeEvent.submitAction来筛选 onSubmitEditing() 回调。这样可以确保只有预期的操作(例如“完成”)才能触发您的代码。
处理其他submitAction值
除了“完成”,您可能还想回复其他提交操作。submitAction值对应于returnKeyType值加上使用auxOptions设置的自定义值。以下示例说明如何在完成操作的同时处理密码可见性切换。
submitAction值包括“go”、“search”、“next” “previous”。

