File tree Expand file tree Collapse file tree 5 files changed +21
-8
lines changed Expand file tree Collapse file tree 5 files changed +21
-8
lines changed Original file line number Diff line number Diff line change 1
1
import 'package:bloc/bloc.dart' ;
2
+ import 'package:equatable/equatable.dart' ;
2
3
import 'package:meta/meta.dart' ;
3
4
4
5
part 'app_event.dart' ;
@@ -7,7 +8,7 @@ part 'app_state.dart';
7
8
class AppBloc extends Bloc <AppEvent , AppState > {
8
9
AppBloc () : super (const AppState ()) {
9
10
on < AppNavigationIndexChanged > ((event, emit) {
10
- emit (state.copyWith (selectedIndex : event.index));
11
+ emit (state.copyWith (selectedBottomNavigationIndex : event.index));
11
12
});
12
13
}
13
14
}
Original file line number Diff line number Diff line change 1
1
part of 'app_bloc.dart' ;
2
2
3
- @immutable
4
- class AppState {
5
- const AppState ({this .selectedIndex = 0 });
6
- final int selectedIndex;
3
+ class AppState extends Equatable {
4
+ const AppState ({this .selectedBottomNavigationIndex = 0 });
5
+ final int selectedBottomNavigationIndex;
7
6
8
- AppState copyWith ({int ? selectedIndex }) {
7
+ AppState copyWith ({int ? selectedBottomNavigationIndex }) {
9
8
return AppState (
10
- selectedIndex: selectedIndex ?? this .selectedIndex,
9
+ selectedBottomNavigationIndex:
10
+ selectedBottomNavigationIndex ?? this .selectedBottomNavigationIndex,
11
11
);
12
12
}
13
+
14
+ @override
15
+ List <Object ?> get props => [selectedBottomNavigationIndex];
13
16
}
Original file line number Diff line number Diff line change @@ -22,7 +22,7 @@ class AppScaffold extends StatelessWidget {
22
22
smallSecondaryBody: AdaptiveScaffold .emptyBuilder,
23
23
secondaryBody: AdaptiveScaffold .emptyBuilder,
24
24
largeSecondaryBody: AdaptiveScaffold .emptyBuilder,
25
- selectedIndex: state.selectedIndex ,
25
+ selectedIndex: state.selectedBottomNavigationIndex ,
26
26
onSelectedIndexChange: (index) {
27
27
context
28
28
.read <AppBloc >()
Original file line number Diff line number Diff line change @@ -113,6 +113,14 @@ packages:
113
113
url: "https://pub.dev"
114
114
source: hosted
115
115
version: "0.4.1"
116
+ equatable:
117
+ dependency: "direct main"
118
+ description:
119
+ name: equatable
120
+ sha256: "567c64b3cb4cf82397aac55f4f0cbd3ca20d77c6c03bedbc4ceaddc08904aef7"
121
+ url: "https://pub.dev"
122
+ source: hosted
123
+ version: "2.0.7"
116
124
fake_async:
117
125
dependency: transitive
118
126
description:
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ environment:
8
8
9
9
dependencies :
10
10
bloc : ^9.0.0
11
+ equatable : ^2.0.7
11
12
flex_color_scheme : ^8.1.1
12
13
flutter :
13
14
sdk : flutter
You can’t perform that action at this time.
0 commit comments