У меня есть поднятая кнопка с закрытием, которое выполняет функцию в моем AuthenticationProvider
RaisedButton(
textColor: Theme.of(context).backgroundColor,
onPressed: () => authenticationProvider.registerWithPhone(context, _phoneNumber, onFailed: _onRegistrationFailed),
child: Text('Send'),
)
Она передает функцию обратного вызова, определенную в том же виджете
void _onRegistrationFailed(BuildContext context, Exception exception)
{
showDialog(
context: context,
builder: (context) {
return PlatformAlertDialog('test', 'test', 'test');
});
}
Но я получаю следующую ошибку '(BuildContext, Exception) => void' is not a subtype of type '(BuildContext, Exception) => () => void'
Эта функция вызывается поднятой кнопкой
Future<void> registerWithPhone(BuildContext context, PhoneNumberModel phoneNumber,
{VoidCallback onSuccess(BuildContext context), VoidCallback onFailed(BuildContext context, Exception exception)}) async {
_status = AuthenticationStatus.Authenticating;
notifyListeners();
String localizedPhoneNumber = phoneNumber.toString();
return await _authentication.verifyPhoneNumber(
phoneNumber: localizedPhoneNumber,
timeout: Duration(seconds: _phoneVerificationTimeout),
verificationCompleted: (authCredential) => _verificationComplete(context, authCredential, onSuccess: onSuccess),
verificationFailed: (authException) => _verificationFailed(context, authException, onFailed: onFailed),
codeAutoRetrievalTimeout: (verificationId) => _codeAutoRetrievalTimeout(verificationId),
codeSent: (verificationId, [code]) => _smsCodeSent(verificationId, [code]));
}
Так как мне передать обратный вызов в замыкании?