参数类型 'Widget Function(BuildContext, T, Widget)' 无法分配给参数类型 'Widget Function(BuildContext, T, Widget?)'

The argument type 'Widget Function(BuildContext, T, Widget)' can't be assigned to the parameter type 'Widget Function(BuildContext, T, Widget?)'

我一直在按照教程将状态管理实施到我们的 Flutter Web 应用程序中。这是教程:https://medium.flutterdevs.com/firebase-authentication-using-provider-in-flutter-522841a2ee4d

现在我正在为我的小部件创建“baseView”模型并且有点迷茫,因为我是 flutter 的新手。

class BaseView<T extends BaseModel> extends StatefulWidget {
  final Widget Function(BuildContext context, T model, Widget child) builder;

  const BaseView({
    @required this.builder,
  });

  @override
  _BaseViewState<T> createState() => _BaseViewState<T>();
}

class _BaseViewState<T extends BaseModel> extends State<BaseView<T>> {
  T model = locator<T>();

  @override
  Widget build(BuildContext context) {
    return ChangeNotifierProvider<T>.value(
      //builder: (context) => model,
      child: Consumer<T>(builder: widget.builder),
      //notifier: model,
      value: model,
    );
  }
}

首先我收到“@required this.builder”部分的错误消息:

The parameter 'builder' can't have a value of 'null' because of its type, but the implicit default value is 'null'.

对于“Consumer(builder: widget.builder)”部分我得到了这个错误:

The argument type 'Widget Function(BuildContext, T, Widget)' can't be assigned to the parameter type 'Widget Function(BuildContext, T, Widget?)'.

Link 到项目的 Github 仓库,在教程中介绍:https://github.com/flutter-devs/flutter_auth_provider

Widget Function(BuildContext, T, Widget) 无法接受小部件的 null 值,这是 Widget Function(BuildContext, T, Widget?) 签名所要求的。

就是这样。有道理吗?