【发布时间】:2021-12-07 18:37:51
【问题描述】:
我正在尝试制作自定义小部件 TextFormField, 但是验证器:验证器,显示错误
参数类型“动态函数()”不能分配给参数类型“字符串?函数(字符串?)?'.dartargument_type_not_assignable 动态 Function() 验证器 包:store/widgets/mytextformfield.dart
mytextformfield.dart
导入'package:flutter/material.dart';
class MyTextFormField extends StatelessWidget {
final Function() validator;
final bool obserText;
final String name;
const MyTextFormField({
Key? key,
required this.obserText,
required this.validator,
required this.name,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return TextFormField(
obscureText: obserText,
**validator: validator,**
decoration: InputDecoration(
border: const OutlineInputBorder(),
hintText: name,
),
);
}
}
在 login.dart 上
MyTextFormField(
obserText: obserText,
name: "Email",
validator: (value) {
if (value == "") {
return "Please Fill Email";
} else if (!regExp.hasMatch(value!)) {
return "Email is Invaild";
}
return "";
},
),
【问题讨论】:
标签: android flutter visual-studio-code