मैं पुस्तकालय प्रदाता से बहुप्रदाता का उपयोग करने की कोशिश कर रहा हूँ। लेकिन यह काम नहीं कर रहा है क्योंकि सामग्री मल्टीप्रोवाइडर होने से पहले ऊपरी विजेट को सही प्रदाता नहीं मिल रहा है।

मैं पहले से ही कुछ भी आयात करने की कोशिश कर रहा हूं लेकिन यह अभी भी काम नहीं कर रहा है

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
0
Nyamuk Terbang 20 मई 2019, 07:24

1 उत्तर

सबसे बढ़िया उत्तर

समस्या यह है कि आप कर रहे हैं:

Provider.of<Socketio>(context)

लेकिन आप कभी भी Provider<Socketio> प्रकार का प्रदाता नहीं बना रहे हैं

अपना कोड देखकर, आप शायद इसका उपयोग करना चाहते हैं:

Provider.of<Chat>(context)
1
Rémi Rousselet 20 मई 2019, 04:57