在此消费者 Widget 上方找不到正确的提供者

Cound not find the correct Provider above this consumer Widget

我正在尝试使用图书馆提供者的多提供者。 但它不起作用,因为它找不到正确的提供者,尽管 material 之前的上部小部件是 MultiProvider。

我已经尝试导入任何东西,但仍然无法正常工作

class _LoginViewState extends State<LoginView> {
  final TextEditingController _controller = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return BaseView<LoginModel>(
      builder: (context, model, child) => Scaffold(
        backgroundColor: backgroundColor,
        body: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            StreamBuilder<Chat>(
              stream: Provider.of<Socketio>(context).streamChat,
              builder: (context, snapshot) {
                return Text(snapshot.data?.toString() ?? 'Foo');
              },
            ),
            LoginHeader(
              validationMessage: model.errorMessage,
              controller: _controller),
            model.state == ViewState.Busy
            ? CircularProgressIndicator()

那是我可以Provider.of

的地方
void main() {
  setupLocator();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return  MultiProvider(
      providers: [
        StreamProvider<User>(
          initialData: User.initial(),
          builder: (context) => locator<AuthenticationService>().userController,
        ),
        StreamProvider<Chat>(
          initialData: Chat.initial(),
          builder: (context) => locator<Socketio>().chatController,
        ),
      ],
      child: MaterialApp(
        title: 'Flutter Demo',
        theme: ThemeData(),
        initialRoute: '/login',
        onGenerateRoute: Router.generateRoute,
      ),
    );
  }
}```
this is where I provider socket io provider before Maetrialapp inside Multi Provider

问题是你在做什么:

Provider.of<Socketio>(context)

但是您永远不会创建 Provider<Socketio>

类型的提供者

查看您的代码,您可能想使用:

Provider.of<Chat>(context)