StatelessWidget
StatelessWidget 是无状态控件,没有自己的私有数据,是纯展示型的控件,基本定义过程如下:
class MyMidget extends StatelessWidget {
// 构造函数:
// 其中的 this.title 定义的是命名参数
// @required 用来规定某个数据在初始化的时候是必须要提供的,否则会报错。
MyApp({Key key, @required this.title}) : super(key: key);
// final:用于修饰变量,表示单赋值(single-assignment),
// 使用final修饰的变量必须进行初始化,一旦被赋值之后,不能够再次被赋值,否则编译会报错。
final String title;
// build 函数相当于 react.js 中的 render 函数
// 必须 return 一个 UI 结构,用来构建当前控件对应的UI界面
// 在 StatelessWidget 控件中,build 函数是必须的
@override
Widget build(BuildContext context) {
return Text(title);
}
}
基本使用过程如下:
void main() => runApp(
// MyApp() 函数的调用,是 new MyApp() 的简写形式,
// 其中 title 是构造函数的参数,
// 且必须传递 title 数据,因为它已被标记为 @required 必填项
MyApp(title: 'Flutter初体验鸭')
);