我得到以下错误:
Error: The argument type 'Future<void> Function({bool success})' can't be assigned to the parameter type 'void Function({bool success})' because 'Future<void> Function({bool success})' is nullable and 'void Function({bool success})' isn't.
个
在try 使用我的回调时. 我得到了这个函数:
static Future<void> showConfirmationModal({
required BuildContext context,
required void Function({bool success}) callback,
}) async {
// doing stuff
callback(true);
}
我这样调用它:
OverlayModal.showConfirmationModal(
context: context,
callback: ({required bool success}) async {
if (success) {
// do stuff
}
},
);
如果我不命名Success参数并像这样做,它就会起作用
required void Function(success) callback,
...
和callback: (bool success) async {}
但是,因为我的林特告诉我应该对bool使用命名参数,所以我想要更改它,但从那时起就遇到了这个错误.
我做错了什么?为什么它说,我的回调可以为空?