【发布时间】:2021-01-17 21:07:38
【问题描述】:
我想让我的应用动态化。有没有办法可以在任何 Flutter 应用程序中从我的小部件生成 JSON?
我找到了仅用于从 JSON 解析到小部件的解决方案,但我需要其他方式。
【问题讨论】:
-
肯定有。只需搜索 JSON 编码
-
我搜索了这个。但我只收到 JSON 到小部件格式的答案,但我需要相反的方式(小部件到 JSON)。
我想让我的应用动态化。有没有办法可以在任何 Flutter 应用程序中从我的小部件生成 JSON?
我找到了仅用于从 JSON 解析到小部件的解决方案,但我需要其他方式。
【问题讨论】:
老实说,我不确定这是否是最好的方法...但我认为您可以使用以下类似的方法手动生成 JSON ...
myPrint(dynamic widget){
if(widget is Column || widget is Row || widget is Stack){
for(dynamic w in widget.children){
print(widget.toString());
myPrint(w);
}
}else{
print(widget.toString());
try {
myPrint(widget.child);
} catch (e) {
}
}
}
例如下面的小部件...
var myWidget = Column(
children: [
Center(
child: Text("word" , style: TextStyle(fontSize: 25),),
),
],
);
这样打印...
Column(direction: vertical, mainAxisAlignment: start, crossAxisAlignment: center)
Center(alignment: center)
Text("word", inherit: true, size: 25.0)
【讨论】: