flutter - 检查表单输入是否为10的倍数

标签 flutter dart

我想验证TexFormField字段,以检查最小值10(在其他地方完成),还检查输入的值是10的倍数。

我编写了一个试图同时处理这两个函数的函数,它似乎可以正常工作。但是,它感觉笨拙。在提交表单之前,它不会提供任何反馈。这是我写的:

    final form = _formKey.currentState;
    if ((form.validate()) && (_amount / 10 is int)) {
      form.save();
      return true;
    }
    return false;
  } 

有没有一种更干净的方法来检查输入的值是否为10的倍数(或任何整数)?例如,在validator:属性字段本身中?

最佳答案

validator: (String value) {
  int n = int.parse(value);
  int multipleOf = 10;

  return n % multipleOf != 0 ? "not a multiple of $multipleOf" : null;
}

关于flutter - 检查表单输入是否为10的倍数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58252980/

相关文章:

swift - 在Flutter中捕获 'as'类型转换异常

android - Flutter 中的控制台消息

dart - 从 FlexibleSpace 标题中删除默认填充

flutter - Flutter:使用badCertificateCallback进行HTTPS证书验证

Flutter:查找两个日期之间的天数

firebase - 一次性验证后Flutter Android App崩溃

flutter - 从自定义按钮打开侧抽屉存在于容器中

Flutter 扩展方法不起作用,它说 "undefined class"和 "requires the extension-methods language feature"

dart - itemcount 中的 snapshot.data.length 不起作用 : "The getter ' length' was called on null"

dart - 如何在单元测试中访问 Dart 类