How to fix "type 'String' is not a subtype of type '(String?) => String?" error in flutter
761
validate function is different from your function...so change the function validate name
String validateName(String? value) {
if (value!.isEmpty) return 'Username is Required.';
final RegExp nameExp = new RegExp(r'^[A-za-zğüşöçİĞÜŞÖÇ ]+$');
if (!nameExp.hasMatch(value))
return 'Please enter only alphabetical characters.';
return value;
}
and on the textfield builder...put the validateFunction like this
TextFormBuilder(
validateFunction: validateName,
)
Author by
han da
Updated on December 29, 2022Comments
-
han da about 1 year
I am learning flutter and getting so many errors with flutter...
I am trying to get a validation of text fields with the following methods:
validateName() { String value = ''; if (value.isEmpty) return 'Username is Required.'; final RegExp nameExp = new RegExp(r'^[A-za-zğüşöçİĞÜŞÖÇ ]+$'); if (!nameExp.hasMatch(value)) return 'Please enter only alphabetical characters.'; return value; }
However, I am getting the above mentioned error on validationFunction in the textformbuilder:
TextFormBuilder( enabled: !viewModel.loading, prefix: Feather.user, hintText: "Username", textInputAction: TextInputAction.next, validateFunction: validateName(), onSaved: (String val) { viewModel.setName(val); }, focusNode: viewModel.usernameFN, nextFocusNode: viewModel.emailFN, ),
Thanks in advance!