name27 / flutter

0 stars 0 forks source link

null-safety, try-catchm, FutureBuilder, 로딩위잿 #75

Open name27 opened 1 year ago

name27 commented 1 year ago

null-safety

  1. 내가 가질 변수가 null을 가질 수 있을 때, 데이터타입에 ? 을 붙인다. ex) String? message = null;
  2. 그렇게 되는 순간, 다트도 해당 데이터를 계속 의삼하고 긴장할 것이다.
  3. null일 수도 있을 때에 제어문을 통해 다뤄준다.
  4. null이 아닐 것을 확신하면, 변수명 뒤에 ! 를 붙여준다.
  5. null인 데이터에 데이터를 넣어주려면 ?? 키워드를 사용한다. ex) result = item["name"] ?? "데이터를 불러올 수 없다";

try-catch

void main(){
 try{
  List items = ["a", "b", "c"];
  print(items[3];
 } on RangeError catch(e){
  print("범위에러 ${e}");
 }
}

FutureBuilder

FutureBuilder{
  future: Future.delayed(Duration(seconds: 3), ()=> "Hello"),
  builder: (context, snapshot) {
    if(snapshot.connectionState == ConnectionState.done){
      return Text(snapshot.data!);
    }
    return SizedBox();
  }
}

로딩 위젯