多言語(Jave、PHPなど)の場合
僕の経験上(浅いので突っ込まないで)if文で条件分岐する際に、
条件がtrueの時しか書いてこなかったんですが、Flutterで画面遷移を作成しているときに
引っかかったのでメモとして残しておきます。
PHPのとき
if (index == 1) self::NextPage();
みたいな感じで、indexが1だったときNextPageメソッドを呼び出すことをよくしていました。
Laravelでリダイレクトするならこんな感じ
if (index == 1) return redirect()->route('next_page');
この時って別にfalseだった時の条件分岐書いてこなかったんですよね、
((まぁ書いた方がいいんですけど))
Flutter
はい、本題です。
if (index == 1) Navigator.of(context).pushNamed('/search');
でBottomNavigationBarがonTapされたときに、画面遷移したかったのですが、
trueの時だけ書いていたら、
A build function returned null
みたいなエラーが。。
Flutter初学者の私からしたらOMGでした。
falseの条件分岐を記載したらエラー解決しました!
onTap: (int index) {
print(index);
if (index == 1) Navigator.of(context).pushNamed('/search');
else Navigator.of(context).pushNamed('/');
},