Open yokmama opened 2 years ago
======== Exception caught by widgets library =======================================================
The following ProviderNotFoundException was thrown building TweetWidget(dirty):
Error: Could not find the correct Provider
This happens because you used a BuildContext
that does not include the provider
of your choice. There are a few common scenarios:
You added a new provider in your main.dart
and performed a hot-reload.
To fix, perform a hot-restart.
The provider you are trying to read is in a different route.
Providers are "scoped". So if you insert of provider inside a route, then other routes will not be able to access that provider.
You used a BuildContext
that is an ancestor of the provider you are trying to read.
Make sure that TweetWidget is under your MultiProvider/Provider
For example, instead of:
Widget build(BuildContext context) {
return Provider<Example>(
create: (_) => Example(),
// Will throw a ProviderNotFoundError, because `context` is associated
// to the widget that is the parent of `Provider<Example>`
child: Text(context.watch<Example>()),
),
}
consider using builder
like so:
Widget build(BuildContext context) {
return Provider<Example>(
create: (_) => Example(),
// we use `builder` to obtain a new `BuildContext` that has access to the provider
builder: (context) {
// No longer throws
return Text(context.watch<Example>()),
}
),
}
If none of these solutions work, consider asking for help on StackOverflow: https://stackoverflow.com/questions/tagged/flutter
The relevant error-causing widget was: TweetWidget TweetWidget:file:///E:/develop/projects/hacklab/flutter/TwitterClient/lib/pages/timeline_page.dart:42:52 When the exception was thrown, this was the stack:
======== Exception caught by widgets library ======================================================= The following ProviderNotFoundException was thrown building TweetWidget(dirty): Error: Could not find the correct Provider above this TweetWidget Widget
This happens because you used a
BuildContext
that does not include the provider of your choice. There are a few common scenarios:You added a new provider in your
main.dart
and performed a hot-reload. To fix, perform a hot-restart.The provider you are trying to read is in a different route.
Providers are "scoped". So if you insert of provider inside a route, then other routes will not be able to access that provider.
You used a
BuildContext
that is an ancestor of the provider you are trying to read.Make sure that TweetWidget is under your MultiProvider/Provider.
This usually happens when you are creating a provider and trying to read it immediately.
For example, instead of:
consider using
builder
like so:If none of these solutions work, consider asking for help on StackOverflow: https://stackoverflow.com/questions/tagged/flutter
The relevant error-causing widget was: TweetWidget TweetWidget:file:///E:/develop/projects/hacklab/flutter/TwitterClient/lib/pages/timeline_page.dart:42:52 When the exception was thrown, this was the stack:
0 Provider._inheritedElementOf (package:provider/src/provider.dart:356:7)
1 Provider.of (package:provider/src/provider.dart:293:30)
2 WatchContext.watch (package:provider/src/provider.dart:700:21)
3 TweetWidget.build (package:twitter_test/widgets/TweetWidget.dart:76:59)
4 StatelessElement.build (package:flutter/src/widgets/framework.dart:4876:49)
5 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4806:15)
6 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
7 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4787:5)
8 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4781:5)
9 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3817:16)
10 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6350:36)
11 Element.updateChild (package:flutter/src/widgets/framework.dart:3551:18)
12 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5883:32)
13 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6375:17)
14 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
15 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
16 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
17 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
18 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
19 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
20 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
21 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
22 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
23 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
24 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
25 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
26 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
27 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
28 StatefulElement.update (package:flutter/src/widgets/framework.dart:5009:5)
29 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
30 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
31 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
32 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
33 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
34 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
35 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
36 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
37 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
38 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
39 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
40 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
41 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
42 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
43 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
44 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
45 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
46 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
47 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
48 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
49 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
50 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
51 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
52 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
53 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
54 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
55 StatefulElement.update (package:flutter/src/widgets/framework.dart:5009:5)
56 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
57 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
58 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
59 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
60 StatefulElement.update (package:flutter/src/widgets/framework.dart:5009:5)
61 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
62 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
63 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
64 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
65 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
66 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
67 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
68 StatelessElement.update (package:flutter/src/widgets/framework.dart:4883:5)
69 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
70 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
71 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
72 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
73 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2659:19)
74 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:891:21)
75 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:370:5)
76 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1146:15)
77 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1083:9)
78 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:997:5)
82 _invoke (dart:ui/hooks.dart:151:10)
83 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:308:5)
84 _drawFrame (dart:ui/hooks.dart:115:31)
(elided 3 frames from dart:async)