12月1日 進捗日記[自分用]

作業内容

・Providerの理解

どうやらProviderを使わないと簡単にはリアルタイムにcloud firestoreとのやりとりをすることが難しそう。

とりあえず、providerの基本的な使い方をコードを使いながら理解することにした。

こちらの記事をベースに勉強させていただく。
https://blog.dalt.me/1741

以下は理解に必要だった内容

【Dart】with等の使い方基礎

参考|https://zenn.dev/iwaku/articles/2020-12-16-iwaku

withの使い方がわからなかったので調べた。以下は引用

・階層構造的な継承ではなく、追加で外付けするイメージ
・注意点として、コンストラクタは持たない
・複数指定可能 && オーバーライドしなくてよい = 処理を実装した関数置き場

Sized boxの使い方

スクロールの範囲を指定できる。

class BookshelfScreen extends StatelessWidget {
 @override
 Widget build(BuildContext context) {
   return Scaffold(
     appBar: AppBar(
       title: const Text('Book List'),
     ),
     body: Center(
       //スクロールの範囲を制限
       child: SizedBox(
         height: 200,
         child: ChangeNotifierProvider(
           create: (ctx) => Books(),
           child: Column(
             children: <Widget>[
               Expanded(
                 child: Bookshelf(),
               ),
               Consumer<Books>(
                 builder: (ctx, booksData, _) => Center(
                   child:
                   Text('totalFavoriteCount: ${booksData.favoriteCount}'),
                 ),
               ),
             ],
           ),
         ),
       ),
     ),
   );
 }
}





いいなと思ったら応援しよう!