Flutterで「The parameter key can’t have a value of null」エラーが発生した原因と解決策

Flutter
 

環境

macOS Big Sur Version 11.5.2
Flutter 2.2.3
Xcode 12.5.1

問題と原因

FlutterのStatefulWidgetを使用した際に以下のようなエラーが発生。

The parameter 'key' can't have a value of 'null' because of its type, but the implicit default value is 'null'.
Try adding either an explicit non-'null' default value or the 'required' modifier.

問題のソースコード

class SampleAppPage extends StatefulWidget {
SampleAppPage({Key key}) : super(key: key);
...

Nullセーフティが有効な状態であるため、変数keyがNullだから怒られる。

解決方法

Nullセーフティの状態を回避することで解決した。

修正したソースコード

class SampleAppPage extends StatefulWidget {
SampleAppPage({Key? key}) : super(key: key);
...

変数の型名にクエスチョンをつけることでそれを意味する。

参照先では3通り紹介されていたが、最も一般的な1つを紹介した。

コメント

タイトルとURLをコピーしました