Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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
Flutter 在表单生成器上执行异步验证_Flutter_Dart - Fatal编程技术网

Flutter 在表单生成器上执行异步验证

Flutter 在表单生成器上执行异步验证,flutter,dart,Flutter,Dart,我正在使用FlatterFormBuilder,如果名称有效/唯一,我将尝试从服务器获取一些数据 我实现了一个额外的FieldValidator: static FormFieldValidator isUniqueHorseName({ dynamic version, String errorText = "Horse already exist.", }) { return (valueCandidate) { print(valueCandidat

我正在使用FlatterFormBuilder,如果名称有效/唯一,我将尝试从服务器获取一些数据

我实现了一个额外的FieldValidator:

static FormFieldValidator isUniqueHorseName({
    dynamic version,
    String errorText = "Horse already exist.",
  }) {
    return (valueCandidate) {
      print(valueCandidate);
      Future<bool> isUnique = HorseRepository().isUnique(valueCandidate);
      print(isUnique);
      return null;
    };
  }

isUnique值为true或false时,如何返回valueCandidate?

支持异步验证器。谢谢,我将对此进行研究。
FormBuilderTextField(
                      attribute: "name",
                      decoration: InputDecoration(labelText: "Name"),
                      validators: [
                        FormBuilderValidators.required(errorText: "Name is required"),
                        FormHorseValidators.isUniqueHorseName(errorText: "Horse already exist."),
                      ],
                    )