code_build (https://pub.dartlang.org/packages/code_builde)包提供了一种为该类生成类和构造函数、字段和方法的解决方案。
我的最终目标是基于给定的json结构生成Flutter (https://flutter.io)小部件,但我不知道如何使用code_build或其他包来实现这一点。
因此,我们将非常感谢您的帮助!
发布于 2018-11-13 09:14:49
编写输出Dart代码的代码的一般方法是将功能包装在Builder中并使用build_runner执行代码生成
在较高的级别上,您将编写一个Builder,该At:
buildExtensions资产中具有buildStep.inputId的buildExtensions,并解析json。code_builder构建字符串,然后将其写入输出资产。然后你就可以configure the builder in build.yaml了。或者手动将其应用于包,或者如果您希望将其作为实用程序发布,则可以将其应用于依赖项。
你的包应该在build_runner上有一个dev_dependency,然后你就可以用flutter packages run build_runner build执行构建了。
在https://github.com/dart-lang/build/tree/master/docs上有更多文档
您可以看到一个包的示例,它执行类似的操作-从yaml文件开始,然后使用https://github.com/natebosch/message_builder上的code_builder输出Dart文件
发布于 2019-07-02 22:38:08
如果您只想构建模型类,现在有一个在线工具可以从JSON有效负载生成Dart类。它不会在运行时动态执行,但它在您第一次构建程序时非常有帮助。
https://stackoverflow.com/questions/53270688
复制相似问题