概要
どうも、@daiki1003です!午前中に、


【Flutter】3.13がリリース!その内容を10個に分けてまとめてみたよ!
とうとう!Flutter 3.13がリリースされました! preが何回かアップデートされたりしていましたがとうとうって感じですね。 本記事では、 を元にどんな機能/改善がリリースされたのかの全貌をお届けできれば...
を公開しましたがその後対応してみたのでその時に必要だった変更をまとめてみました。
執筆時アップデート前環境
| 名前 | バージョン |
| macOS Ventura | 13.1 |
| Flutter | 3.10.6 |
アップデート内容の紹介
Flutter 3.13
require_trailing_commas
最後のカンマのルールが厳しくなった様です。
特にWidgetの構築時になくても良かったものが必須になったみたいですね。
// BEFORE
return Column(
children: [
Hoge(),
Fuga(
value: 1,
)
],
);
// AFTER
return Column(
children: [
Hoge(),
Fuga(
value: 1,
), // ここを追加
],
);
use_build_context_synchronously
こちらも前からあったルールですが厳格になったようです。
どうやら、 try/catchのcatchセクションまでチェックが及ぶようになったみたいですね。
// BEFORE
try {
await ref.read(someFutureProvider.future);
} on Exception catch (error, stackTrace) {
ScaffoldMessenger.of(context).show...
}
// AFTER
try {
await ref.read(someFutureProvider.future);
} on Exception catch (error, stackTrace) {
if (context.mounted) {
ScaffoldMessenger.of(context).show...
}
}
AppLifeCycleState.hidden
AppLifecycleState.hiddenが追加されました。
これにより、以前のコードでswitchでハンドリングしていた箇所なんかはエラーが出たりすると思います。
// BEFORE
switch (lifecycleState) {
AppLifecycleState.inactive => ...,
AppLifecycleState.resumed => ...,
AppLifecycleState.paused => ...,
AppLifecycleState.detached => ...,
}
// AFTER
switch (lifecycleState) {
AppLifecycleState.inactive => ...,
AppLifecycleState.hidden => ..., // 追加
AppLifecycleState.resumed => ...,
AppLifecycleState.paused => ...,
AppLifecycleState.detached => ...,
}
Dart 3.1.0
変更なし
最後に
現状、これくらいです。
今回はそんなに多くなさそうですね。
追加があればアップデートしていきたいと思います。
誰かのお役に立てば。Twitterフォローお願いします
「次回以降も記事を読んでみたい!」「この辺分からなかったから質問したい!」
そんな時は、是非Twitter (@daiki1003)やInstagram (@ashdik_flutter)のフォローお願いします♪
Twitterコミュニティ参加お願いします
Twitterコミュニティ「Flutter lovers」を開設しました!参加お待ちしております😁
☕️ Buy me a coffee
また、記事がとても役に立ったと思う人はコーヒーを奢っていただけると非常に嬉しいです!



コメント