Minimum Step
- 一昨日は、動いて、その様子がconsoleに表示された。
- 昨日は、UIと接続して、ちゃんと動いたけど、表示はやっぱりconsoleだけだった。
- 今日の目標は、取得したデータをUIに表示。
ほんとは一気にリスト表示まで持っていきたかったけれども、そこ欲張ると、また、何が問題か判別するのが複雑になるので、ぐっとがまんして最低限の変更だけ加える。
見本がない。ほんとにこれは困る。一番近い見本は、やっぱりメンターさんにつくってもらったmysql1のコードなので、それをじっくり読んでまずこんなふうに書いてみた。
for (final row in result.rows) {
setState((){
name = row[0];
});
すると[ ]にinidifinedだって、クレームがつく。え〜、ふつうに配列じゃん、と思うが、エラーでは走らないので、どうにかしなきゃならない。
mysql_clientのサンプルコードでprint()になっている箇所をしげしげ眺めると、例えばこんなのがある。
print(row.colAt(0));
お、もしや配列は( )なの? で、こうする。
for (final row in result.rows) {
setState((){
name = row.colAt(0);
});
うーむ、まだ真っ赤だ。でもマウスを載せてみると、
- 「null check (!) 」と出る。
え、そうなのかい。
ということで最終案
for (final row in result.rows) {
setState((){
name = row.colAt(0)!;
});
エラーはなくなりました。 では、debug。
行け!
ウンとも、スンとも・・・だけど、これ、もう慣れてきた。やたら遅いということだ。
行け!
はい、今度は行きましたよ、そして無事、
新規登録者の名前がsimulatorの中央に表示されました!
でも、この「遅い」をどうにかしなくちゃね。「早くする」はとりあえずムリそうなので、「ちょっと待ってねグルグルをつける」かな。userが連打したくなるのを抑えないと。いや、私が、か笑