BugFix: Dart-lang template bugs (#567)

* BugFix: [Dart] Cannot get/set data from json when underscore("_") is included in spec.yaml's property name

Because the property name is always lowerCamelCase

* BugFix: When type is "Date", it is not correctly output
This commit is contained in:
くろねこまいける 2018-07-24 00:48:20 +09:00 committed by William Cheng
parent 2e6bec7345
commit 2e1add83e7

View File

@ -17,30 +17,35 @@ class {{classname}} {
if (json == null) return; if (json == null) return;
{{#vars}} {{#vars}}
{{#isDateTime}} {{#isDateTime}}
{{name}} = json['{{name}}'] == null ? null : DateTime.parse(json['{{name}}']); {{name}} = json['{{baseName}}'] == null ? null : DateTime.parse(json['{{baseName}}']);
{{/isDateTime}} {{/isDateTime}}
{{#isDate}}
{{name}} = json['{{baseName}}'] == null ? null : DateTime.parse(json['{{baseName}}']);
{{/isDate}}
{{^isDateTime}} {{^isDateTime}}
{{^isDate}}
{{#complexType}} {{#complexType}}
{{#isListContainer}} {{#isListContainer}}
{{name}} = {{complexType}}.listFromJson(json['{{name}}']); {{name}} = {{complexType}}.listFromJson(json['{{baseName}}']);
{{/isListContainer}} {{/isListContainer}}
{{^isListContainer}} {{^isListContainer}}
{{#isMapContainer}} {{#isMapContainer}}
{{name}} = {{complexType}}.mapFromJson(json['{{name}}']); {{name}} = {{complexType}}.mapFromJson(json['{{baseName}}']);
{{/isMapContainer}} {{/isMapContainer}}
{{^isMapContainer}} {{^isMapContainer}}
{{name}} = new {{complexType}}.fromJson(json['{{name}}']); {{name}} = new {{complexType}}.fromJson(json['{{baseName}}']);
{{/isMapContainer}} {{/isMapContainer}}
{{/isListContainer}} {{/isListContainer}}
{{/complexType}} {{/complexType}}
{{^complexType}} {{^complexType}}
{{#isListContainer}} {{#isListContainer}}
{{name}} = (json['{{name}}'] as List).map((item) => item as {{items.datatype}}).toList(); {{name}} = (json['{{baseName}}'] as List).map((item) => item as {{items.datatype}}).toList();
{{/isListContainer}} {{/isListContainer}}
{{^isListContainer}} {{^isListContainer}}
{{name}} = json['{{name}}']; {{name}} = json['{{baseName}}'];
{{/isListContainer}} {{/isListContainer}}
{{/complexType}} {{/complexType}}
{{/isDate}}
{{/isDateTime}} {{/isDateTime}}
{{/vars}} {{/vars}}
} }
@ -49,10 +54,15 @@ class {{classname}} {
return { return {
{{#vars}} {{#vars}}
{{#isDateTime}} {{#isDateTime}}
'{{name}}': {{name}} == null ? '' : {{name}}.toUtc().toIso8601String(){{^-last}},{{/-last}} '{{baseName}}': {{name}} == null ? '' : {{name}}.toUtc().toIso8601String(){{^-last}},{{/-last}}
{{/isDateTime}} {{/isDateTime}}
{{#isDate}}
'{{baseName}}': {{name}} == null ? '' : {{name}}.toUtc().toIso8601String(){{^-last}},{{/-last}}
{{/isDate}}
{{^isDateTime}} {{^isDateTime}}
'{{name}}': {{name}}{{^-last}},{{/-last}} {{^isDate}}
'{{baseName}}': {{name}}{{^-last}},{{/-last}}
{{/isDate}}
{{/isDateTime}} {{/isDateTime}}
{{/vars}} {{/vars}}
}; };