1. 앱 재시작 후 첫 item 로딩할 때 null을 받으면(값이 없으면) 무한로딩에 걸린다. 이를 해결해보자.
- grocery_list.dart
1) @override
void initState() {
super.initState();
_loadItems();
}
void _loadItems() async {
final url = Uri.https(
'flutter-prep-default-rtdb.firebaseio.com', 'shopping-list.json');
final response = await http.get(url);
if (response.statusCode >= 400) {
setState(() {
_error = 'Failed to fetch data. Please try again later.';
});
}
if (response.body == 'null') {
setState(() {
_isLoading = false;
});
return;
}
--> response.body가 null(문자값으로 받아옴)이면 로딩화면을 멈추기 위해 false로 바꿔주고 빌드위젯을 실행시키면 안되기 때문에 리턴값을 마무리해준다.
'코딩강의 > shopping_list(플러터-유데미)' 카테고리의 다른 글
231. Using the FutureBuilder Widget (0) | 2023.11.16 |
---|---|
229. Better Error Handling (0) | 2023.11.15 |
227. Sending DELETE Requests (0) | 2023.11.15 |
226. Error Response Handling (0) | 2023.11.15 |
225. Managing the Loading State (0) | 2023.11.15 |