1
1
import 'package:flutter/material.dart' ;
2
2
import 'package:provider/provider.dart' ;
3
3
import 'package:provider_example/order_provider.dart' ;
4
- import 'counter_model.dart' ;
4
+
5
5
import 'color_model.dart' ;
6
+ import 'counter_model.dart' ;
6
7
import 'goods_model.dart' ;
7
8
8
9
class FirstScreen extends StatelessWidget {
@@ -26,8 +27,7 @@ class FirstScreen extends StatelessWidget {
26
27
),
27
28
),
28
29
floatingActionButton: FloatingActionButton (
29
- onPressed: () => Navigator .of (context)
30
- .push (MaterialPageRoute (builder: (context) => SecondScreen ())),
30
+ onPressed: () => Navigator .of (context).push (MaterialPageRoute (builder: (context) => SecondScreen ())),
31
31
child: Icon (Icons .navigate_next),
32
32
),
33
33
);
@@ -95,8 +95,7 @@ class SecondScreen extends StatelessWidget {
95
95
),
96
96
SizedBox (height: 20 ),
97
97
Consumer <CounterModel >(
98
- builder: (context, CounterModel counter, child) =>
99
- FloatingActionButton (
98
+ builder: (context, CounterModel counter, child) => FloatingActionButton (
100
99
onPressed: () => counter.increment (),
101
100
child: child,
102
101
),
@@ -171,8 +170,7 @@ class GoodsListScreen extends StatelessWidget {
171
170
title: Text (data.goodsName),
172
171
trailing: GestureDetector (
173
172
onTap: () => provider.collect (index),
174
- child: Icon (
175
- data.isCollection ? Icons .star : Icons .star_border),
173
+ child: Icon (data.isCollection ? Icons .star : Icons .star_border),
176
174
),
177
175
);
178
176
},
@@ -196,7 +194,6 @@ class GoodsListScreen extends StatelessWidget {
196
194
}
197
195
}
198
196
199
-
200
197
class OrderListScreen extends StatefulWidget {
201
198
@override
202
199
_OrderListScreenState createState () => _OrderListScreenState ();
@@ -211,22 +208,21 @@ class _OrderListScreenState extends State<OrderListScreen> {
211
208
value: _provider,
212
209
child: Scaffold (
213
210
body: Selector <OrderProvider , List <Order >>(
214
- selector: (context, provider) => provider.orderList,
215
- builder: (context, provider, child ) {
211
+ selector: (BuildContext _, OrderProvider provider) => provider.orderList,
212
+ builder: (BuildContext _, List < Order > orderList, Widget __ ) {
216
213
return ListView .builder (
217
214
itemCount: _provider.listSize,
218
215
itemBuilder: (context, index) {
219
216
return Selector <OrderProvider , Order >(
220
- selector: (context, provider) => provider.orderList[index],
221
- builder: (context, data, child ) {
217
+ selector: (BuildContext _, OrderProvider provider) => provider.orderList[index],
218
+ builder: (BuildContext _, Order data, Widget __ ) {
222
219
print (('No.${index + 1 } rebuild' ));
223
220
224
221
return ListTile (
225
222
title: Text (data.goodsName),
226
223
trailing: GestureDetector (
227
224
onTap: () => _provider.collect (index),
228
- child: Icon (
229
- data.isCollection ? Icons .star : Icons .star_border),
225
+ child: Icon (data.isCollection ? Icons .star : Icons .star_border),
230
226
),
231
227
);
232
228
},
@@ -236,7 +232,7 @@ class _OrderListScreenState extends State<OrderListScreen> {
236
232
},
237
233
),
238
234
floatingActionButton: Consumer <OrderProvider >(
239
- builder: (context , OrderProvider provider, child ) {
235
+ builder: (BuildContext _ , OrderProvider provider, Widget __ ) {
240
236
return FloatingActionButton (
241
237
child: Icon (Icons .add),
242
238
onPressed: () {
0 commit comments