👶

Flutterの状態管理の基礎

に公開
2
GitHubで編集を提案

Discussion

中條 剛(ちゅーやん)中條 剛(ちゅーやん)

Flutter標準のWidgetをまず理解できるよい記事と思いました!このあたりはどんな状態管理パッケージを使う場合も大事になる基礎的な部分だと思います。

ものすごい細かい部分ですが(Zennにも編集リクエスト機能がほしい)

fはWidget

正確には f は build()メソッド かと思います。その上の画像にも書かれている通りですね。

つまりStatefulWidgetもイミュータブルな状態を持つことができません。

ここは、「つまりStatefulWidgetも ミュータブルな 状態を持つことができません。」の誤植かと思います。

(具体例が思いつきませんでした。。)

これについては、Chip(がビルドする RawChip )などのStatefulWidgetを継承したFlutter標準のWidgetを参考にすると活用方法が思い浮かぶかと思います。

ざっくりいうと、「細かな状態はWidget自身で管理し、操作や変化の結果だけを親のWidgetにコールバックする」ようなWidgetですかね。アニメーションするWidgetなんかに多い気がします。(アニメーションが終わったらその結果変化した状態をコールバックする、みたいな)

長々とすみません。よい記事と思ってじっくり読んでしまいました!

Shun UematsuShun Uematsu

コメントありがとうございます!

正確には f は build()メソッド かと思います。

誤った認識だったので、ご指摘ありがとうございます!

「つまりStatefulWidgetも ミュータブルな 状態を持つことができません。」の誤植かと思います。

おっしゃる通りご誤植でした。。

またStatefulWidgetの具体系な活用方法も教えていただきありがとうございます!
内部で状態を管理し結果をコールバックするようなWidgetの作成時に活用できるという例は、分かりやすく、「確かに使えそう」とすぐイメージできました。

余談ですが、
Chipの実装を見る前はChipRawChipは継承関係にあるのかなとイメージしていたのですが、
実際はChipRawChipをラップしているだけなのは少し意外でした。こういう組み方もあるのかと勉強になりました。