TYPE-1
import 'dart:convert';
void main() {
var rawJson = '{"url": "http:blah.jpg","id":1}';
var parsedJson = json.decode(rawJson);
var imageModel = new ImageModel(parsedJson['id'], parsedJson['url']);
print(imageModel.id);
print(imageModel.url);
}
class ImageModel{
int id;
String url;
ImageModel(this.id, this.url);
}
=================
DISADVANTAGE - If you have 10 element in constructor is not good as optimized cding part.
var imageModel = new ImageModel(parsedJson['id'], parsedJson['url']);
so Now create in effective way in TYPE-2
=================
TYPE-2
=========================
import 'dart:convert';
void main() {
var rawJson = '{"url": "http:blah.jpg","id":1}';
var parsedJson = json.decode(rawJson);
var imageModel = new ImageModel.fromJson(parsedJson);
print(imageModel.id);
print(imageModel.url);
}
class ImageModel{
int id;
String url;
ImageModel(this.id, this.url);
ImageModel.fromJson(parsedJson){
id = parsedJson['id'];
url = parsedJson['url'];
}
}
=========================
You can also represent this -
ImageModel.fromJson(parsedJson){
id = parsedJson['id'];
url = parsedJson['url'];
title = parsedJson['title'];
}
with (both are similar)-
ImageModel.fromJson(parsedJson) :
id = parsedJson['id'],
url = parsedJson['url'],
title = parsedJson['title'];