반응형
class Player {
final String name;
int xp;
String team;
Player.fromJson(Map<String, dynamic> playerJson)
: name = playerJson['name'],
xp = playerJson['xp'],
team = playerJson['team'];
// initalize
void sayHello() {
print("Hi, my name is $name");
}
}
void main() {
var apiData = [
{
"name": "nico",
"team": "red",
"xp": 0,
},
{
"name": "yj",
"team": "red",
"xp": 0,
},
{
"name": "pl",
"team": "red",
"xp": 0,
},
];
apiData.forEach((playerJson) {
var player = Player.fromJson(playerJson);
player.sayHello();
});
}
이 부분이 아주 헷갈리기 시작하는 데, 핵심은 생성자를 아래처럼 Map의 형태로 받아서 변수들을 초기화 시킨 것이다
apiData.forEach((list) {
var player = Player.fromJson(list);
player.sayHello();
});
list 부분을 playerJson ,, 기타 다른 단어들로 대체할 수 있다고 생각하면 된다.
즉 파라미터를 가지고 생성자에 집어넣는 것!
반응형
'DART' 카테고리의 다른 글
[노마드코더 : Dart 시작하기] #4.6 Enums (0) | 2022.11.21 |
---|---|
[노마드코더 : Dart 시작하기] #4.5 Cascade Notation (0) | 2022.11.21 |
[노마드코더 : Dart 시작하기] #4.3 Named Constructors (0) | 2022.11.20 |
[노마드코더 : Dart 시작하기] #4.2 Named Constructor Parameters (0) | 2022.11.20 |
[노마드코더 : Dart 시작하기] #4.1 Constructors (0) | 2022.11.19 |