我对Dart和Flutter完全陌生,我一直在从文档和教程中吸收尽可能多的信息。尽管Dart本身并没有给我带来什么麻烦,但到目前为止Flutter一直很困难。例如,我似乎无法为Hello World应用程序中的这种语法所困扰:
Scaffold(
appBar: AppBar(
title: Text('Welcome to Flutter'),
),
// ...
),
);
我在Dart文档中找不到类似的语法。它是像ClassName(prop1:val1, prop2:val2)
这样的构造函数吗?
答案 0 :(得分:1)
您的直觉是正确的。 Scafford()
正在实例化Widget(类)构造函数,您可以在文档中看到已定义的here。
Flutter UI是很多这样的嵌套构造函数。小部件的构造函数的许多参数本身就是小部件。
在您的Hello World示例中,Scaffold
小部件的appBar
参数采用了AppBar
小部件。 AppBar
本身具有一个名为Title
的参数,该参数带有一个Text
小部件。
答案 1 :(得分:1)
您正在观察Dart的optional named parameters。它不是Flutter特有的。