안녕하세요 IT박사 ho입니다.
오늘은 FutureBuilder에 대해서 알아보겠습니다.
Future<int> getNumber() async{
await Future.delayed(Duration(seconds: 3 ));
final random =Random();
return random.nextInt(100);
}
위의 내용으로 진행되면 일단 Future 함수를 만들어 줍니다.
저러면 랜덤으로 100보다 작은 숫자가 생성이 되겠지요?
그러면 아래 처럼 화면을 만들어주는 위젯을 만들어 줍니다.
핵심은 FutureBuilder 안에 future와 builder를 만들어 주고
future에는 함수명을 넣어주며 값을 받아오는 역활을 주고
builder에는 (context, snapshot){return 값}
snapshot.connectionState<<< 지금 값의 상태
snapshot.data<<<< 위에서받아오는 랜덤 데이터 값
snapshot.error<<< 에러내용 확인
입니다.
Scaffold(
body : FutureBuilder(
future:getNumber();
builder: (context, sanpshot){
return Column(
children[
Text('ConState: ${snapshot.connectionState}'),
Text('Data : ${snapshot.data}'),
Text('Error : ${snapshot.error} ')
])}),
)
0 Comments