Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Validation 颤振TextFormField验证器_Validation_Flutter_Popup_Widget - Fatal编程技术网

Validation 颤振TextFormField验证器

Validation 颤振TextFormField验证器,validation,flutter,popup,widget,Validation,Flutter,Popup,Widget,我遇到了一个问题,有人知道如何将来自验证器的错误消息放在AlertDialog或带有“ok”按钮的弹出窗口上,以关闭弹出窗口。 此错误已返回=> 返回类型“AlertDialog”不是匿名闭包定义的“字符串” 这是因为当您应该返回字符串时,您正在返回一个对话框 替换这个 validator: (value) => value.length != 5 ? AlertDialog(content: Text('Postal Code must be five digits.')) :

我遇到了一个问题,有人知道如何将来自验证器的错误消息放在
AlertDialog
或带有“ok”按钮的弹出窗口上,以关闭弹出窗口。 此错误已返回=>

返回类型“AlertDialog”不是匿名闭包定义的“字符串”


这是因为当您应该返回
字符串时,您正在返回一个
对话框

替换这个

validator: (value) => value.length != 5
  ? AlertDialog(content: Text('Postal Code must be five digits.'))
  : null,
用这个

validator: (value) => value.length != 5
  ? 'Postal Code must be five digits.'
  : null,

如果要显示
AlertDialog
,请使用
validator
中的
showDialog()
方法,如:

validator: (value) {
  if (value.length != 5) {
    showDialog(context: context, builder: (_) => AlertDialog(title: Text("Error")));
  }
  return null;
}
validator: (value) {
  if (value.length != 5) {
    showDialog(context: context, builder: (_) => AlertDialog(title: Text("Error")));
  }
  return null;
}