我正在尝试创建一个通用的消费者小部件,以方便其子视图模型。 因此,我有两个功能。 一个在初始化ViewModel之后具有功能(T),另一个用于将模型传递给其子Widget。
泛型类中的子元素是ChangeNotifier的子元素,在我要在两个函数中发送T值之前,它都可以正常工作。
然后我得到以下错误:
类型'(OnBoardingViewModel)=> Null'不是类型'(ChangeNotifier)=> void'的子类型
和
类型'(BuildContext,OnBoardingViewModel,Widget)=>脚手架'不是类型'(BuildContext,ChangeNotifier,Widget)=> Widget'的子类型
但是,当我将扩展类型从ChangeNotifier更改为OnBoardingViewModel时,一切正常。
有人可以帮助我,或解释为什么这不起作用吗?
import 'package:flutter/material.dart';
import 'package:get_it/get_it.dart';
import 'package:provider/provider.dart';
class StateFullConsumerWidget extends StatefulWidget{
StateFullConsumerWidget({@required this.builder,Key key,this.onPostViewModelInit,this.ch