Abd*_*edy 7 forms dart flutter
当文本表单字段的值发生变化时,如何自动验证它?
我试过
bool _autoValidate = false;
Run Code Online (Sandbox Code Playgroud)
TextFormField(
autovalidate: _autoValidate ,
onChanged: (value) {
setState(() {
_autoValidate = true;
});
},
validator: (value) {
if (value.length < 5) {
return 'False';
} else {
return 'True';
}
},
),
Run Code Online (Sandbox Code Playgroud)
但不起作用,TextFormField验证时仍然没有显示错误。
我需要一种方法来打开对更改的文本的验证。
Ped*_*ngo 27
Flutter 现在有一个 API,仅在内容更改时验证表单字段。您只需使用该autovalidateMode参数并将其设置为AutovalidateMode.onUserInteraction。
以下文本字段仅在用户更改其内容时才会验证:
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Center(
child: TextFormField(
autovalidateMode: AutovalidateMode.onUserInteraction,
),
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
有关何时验证的更多选项,请参阅AutovalidateMode文档。
该API现已在最新的稳定渠道上提供。如果它解决了您的问题,请告诉我。
| 归档时间: |
|
| 查看次数: |
10707 次 |
| 最近记录: |