我正在尝试在两个页面之间发送参数。在此页面之一中,我需要检查参数是否存在,如果存在,则将此值设置为变量,如果不存在,则将其他值设置为
。代码看起来类似于
final String item;
TestPage({Key key, this.item}) : super(key: key);
@override
TestPageState createState() => newTestPageState();
}
class TestPageState extends State<TestPage> {
if (this.¿ITEM? { <--- CAN´T DO THIS
}
我不能在类中调用 item 变量,在文档中仅显示如何在小部件中显示。那么,有什么主意我该如何在类中调用此变量来执行if..else?
答案 0 :(得分:0)
State类具有成员变量main()
,可用于访问StatefulWidget。因此,例如,您将使用widget
访问widget.item
。
另外,如果您计划在小部件的整个生命周期中完全改变项目,则将变量传递给State类并将其作为状态的一部分保存在状态类中可能更合适。