improvement: avoid save null field

This commit is contained in:
Rongjian Zhang 2020-02-01 17:57:51 +08:00
parent a4284d00fb
commit 25bb4336f3
3 changed files with 18 additions and 10 deletions

View File

@ -3,7 +3,7 @@ import 'package:meta/meta.dart';
part 'account.g.dart';
@JsonSerializable()
@JsonSerializable(includeIfNull: false)
class Account {
String platform;
String domain;

View File

@ -17,11 +17,20 @@ Account _$AccountFromJson(Map<String, dynamic> json) {
);
}
Map<String, dynamic> _$AccountToJson(Account instance) => <String, dynamic>{
'platform': instance.platform,
'domain': instance.domain,
'token': instance.token,
'login': instance.login,
'avatarUrl': instance.avatarUrl,
'gitlabId': instance.gitlabId,
};
Map<String, dynamic> _$AccountToJson(Account instance) {
final val = <String, dynamic>{};
void writeNotNull(String key, dynamic value) {
if (value != null) {
val[key] = value;
}
}
writeNotNull('platform', instance.platform);
writeNotNull('domain', instance.domain);
writeNotNull('token', instance.token);
writeNotNull('login', instance.login);
writeNotNull('avatarUrl', instance.avatarUrl);
writeNotNull('gitlabId', instance.gitlabId);
return val;
}

View File

@ -58,7 +58,6 @@ class AuthModel with ChangeNotifier {
}
}
newAccounts.add(account);
_accounts = newAccounts;
// Save