Posted at

VSCode に Dart の fromJson toJson のスニペットを足した

JsonSerializable で json を dart オブジェクトにマッピングするコードは自動生成できるんだけど、そのコードを使うのに以下のようなコードを書かなきゃならない

  factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);

Map<String, dynamic> toJson() => _$UserToJson(this);

Issue みると なんか実装難しい みたいで、じゃあスニペット追加するかーということで、 VSCode の User Snippets から dart.json を開いて下記を追記した

    "fromJson toJson": {

"prefix": "jsong",
"body": [
"factory $1.fromJson(Map<String, dynamic> json) => _$$1FromJson(json);",
"Map<String, dynamic> toJson() => _$$1ToJson(this);"
]
}

これで jsong と書いてタブ叩いてクラス名を書けば期待したコードになる。