TL; DR:何时将变量传递到状态,请从小部件访问它。
我经常碰到必须选择将属性从有状态小部件传递到状态构造函数,还是使用widget.property
语法从小部件直接访问它的问题。
class MyWidget extends StatefulWidget {
final myProperty;
ParallaxView({this.myProperty});
@override
_MyWidgetState createState() => _MyWidgetState(myProperty);
}
class MyWidgetState extends State<MyWidget> {
final myProperty;
MyWidgetState({this.myProperty});
@override
Widget build(BuildContext context) {
return Container(child: myProperty); //<-using passed property
return Container(child: widget.myProperty); //<-or, using widgets property?
}
是否有解决此问题的正确方法,还是只是偏爱?