如何从json结构生成Dart代码

The*_*man 1 code-generation dart flutter

code_buildhttps://pub.dartlang.org/packages/code_builde)封装提供了一种解决方案,以产生那个类的类和构造函数,字段和方法。

我的最终目标是根据给定的 json 结构生成 Flutter ( https://flutter.io ) Widgets,但我不知道如何使用code_build或其他包来做到这一点。

所以帮助将不胜感激!

Nat*_*sch 5

编写输出 Dart 代码的一般方法是将功能包装在 a 中Builder并使用build_runner

在高层次上,你会写一个Builder

  • 拥有buildExtensions{".json": [".dart"]}
  • 读入buildStep.inputId资产并解析 json。
  • 用于code_builder构建一个字符串,然后将其写入输出资产。

然后,您将build.yaml. 或者手动将其应用于您的包,或者如果您想将其发布为实用程序,它可以应用于依赖项。

您的包将有一个dev_dependencyon build_runner,然后您可以使用flutter packages run build_runner build.

https://github.com/dart-lang/build/tree/master/docs有更多文档

你可以看到一个包,做一些类似的例子-与YAML文件开始和输出达特文件使用code_builderhttps://github.com/natebosch/message_builder