이번에는 API로 받은 Json 데이터를 flutter내부에서 사용할 수 있는 형태로 바꿔야 한다.
API의 데이터는 어떻게 되어 있을까?
[{...}, {...}, ... , {...}] 이렇게 되어 있다. List 안에 여러 요소가 있는 형태이다. 그리고 String이다.
(주로 이렇게 되어 있는 것 같다.)
그러면 각 요소를 담는 '그릇'부터 만들어보자.
./models/webtoon_model.dart
편하게 사용하기 위해 named parameter를 사용하였다.
이에 대한 설명은(나도 까먹어서 다시 읽어보고 왔다)https://want-to-work-life-balance.tistory.com/entry/Dart-31-Named-Parameters
Dart - 3.1 Named Parameters
일반적인 함수를 선언하려면...String sayHello(String name, int age, String country) { return "Hello $name, you are $age, and you come from $country";}이 함수를 불러오려면...void main() { print(sayHello('me', 12, 'korea'));}이렇게
want-to-work-life-balance.tistory.com
그러면 다음과 같이 하면 된다:
./services/api_service.dart
1. jsonDecode를 이용해서 string에서 Json형태로 변경한다.
2. Json안에 있는 각 instance들을 WebtoonModel로 넘겨서 title, thumb, id를 저장한다.
3. 결과 값을 return 한다.
결과 값을 return 하기 위해서는 다음과 같이:
void에서 이것으로 변경해야 한다.
'데이터를 나중에 받는 것'이기 때문에, Future를 사용해야 하고, List 안에 각 Instance들이 WebtoonModel로 되어 있기에 Future<List<WebtoonModel>> 이렇게 해야 한다.
'앱 만들기 프로젝트 > Flutter' 카테고리의 다른 글
Flutter - 6.6 FutureBuilder (0) | 2024.11.26 |
---|---|
Flutter - 6.5 waitForWebToons (0) | 2024.11.26 |
Flutter - 6.2 Data Fetching (0) | 2024.11.21 |
Flutter - 6.1 AppBar (0) | 2024.11.20 |
Flutter - 5.4 Code Challenge (0) | 2024.11.20 |