Comments (4)
thank you guys, I managed to solve for yours advice
from bloc.
When developing a Flutter application using the BLoC pattern, it's crucial to manage the scope of your BLoCs/Cubits effectively. Each BLoC/Cubit should be available in the context where it's needed. Declaring all BLoCs/Cubits in your main method (root of the widget tree) can work, but it's not always the most efficient approach, especially for larger applications with multiple features or screens.
A more scalable and modular approach is to provide each BLoC/Cubit closer to where it's used. This strategy not only helps in organizing the code better but also ensures that the BLoCs/Cubits are disposed of properly when they are no longer needed, avoiding potential memory leaks and performance issues.
Example Implementation:
Here's an example of how you can wrap each page or feature in its own BlocProvider:
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'my_bloc.dart'; // Import your specific BLoC
/// Wrapper widget that provides the BLoC to MyPageView.
class MyPage extends StatelessWidget {
const MyPage({super.key});
@override
Widget build(BuildContext context) {
return BlocProvider(
create: (context) => MyBloc(), // Replace with your specific BLoC
child: const MyPageView(),
);
}
}
/// The page that uses the BLoC.
class MyPageView extends StatelessWidget {
const MyPageView({super.key});
@override
Widget build(BuildContext context) {
// Example usage of BlocBuilder
return BlocBuilder<MyBloc, MyState>(
builder: (context, state) {
// Build your UI based on the BLoC state
return Scaffold(
appBar: AppBar(title: Text('My Page')),
body: Center(
child: Text('State: $state'),
),
);
},
);
}
}
from bloc.
@DiegoVega19 u need to move ur BlocProvider "up" one level in the widget tree, because floatingActionIcon and ur BlocProvider at same level, resulting the bloc not available to Builder's context on the floatingActionIcon.
from bloc.
You can close the issue if its fixed.😀
from bloc.
Related Issues (20)
- fix: Unable to use bloc consumer and go router together in flutter web, site get redirected to "/" automatically. HOT 2
- Question: Cancel running streams with another event HOT 4
- docs: example output in bloclibrary.dev#error-handling is not correctly HOT 1
- fix: ReorderableListView flickers with Flutter BLoC HOT 1
- AutoFillGroup does not work with flutter bloc HOT 2
- Concurrency Issue with Bloc Events Processing Sequentially when events are Async HOT 4
- fix: Right-click on No bloc related options HOT 6
- Getting Assertion error when emit a state in aysnc function HOT 5
- Question: bug or misuse? HOT 4
- fix: hydrated_bloc is not working like it should HOT 8
- docs: I need help understanding Bloc-to-Bloc Communication HOT 2
- feat(evented_bloc): A new package for Blocs and Cubits with the ability to fire events... HOT 1
- discussion: Implementing Dynamic Bloc Switching HOT 4
- ReplayBloc function onTransition() handles event _Undo instead of user defined event HOT 2
- fix: In Flutter v3.16.4 stable the fromJson method stopped working HOT 1
- why my code will result in error? HOT 2
- BlocBuilder not getting called after creating new task, ListView still displays old data HOT 2
- question: bloc with many datasets HOT 26
- feat: Use with Freezed HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bloc.