gpt4 book ai didi

flutter - 无法在statefulwidget中定义对象

转载 作者:行者123 更新时间:2023-12-03 03:22:42 25 4
gpt4 key购买 nike

我现在正在尝试将数据存储在对象引用中,这只是一个简单的类,但是我用单例类替换了它,请解释为什么我无法在build方法上方初始化该对象。

class MyStatefulWidget1State extends State<MyStatefulWidget1> {

final TextEditingController titleController = TextEditingController();

Data().value = "dscs"; **//IF i define here it will produce error**

@override
Widget build(BuildContext context) {
Data().value = "dscs"; **// bu if i define here it will work just fine**
return TextField(controller: titleController);
}
}

class Data {
String value;
}

最佳答案

在任何类型的类中,当您尝试访问对象成员变量(值)时,我们只能创建变量和方法,这不是为什么它会产生错误。

虽然build方法也是方法的一种,所以您也可以访问任何类或对象成员变量。这就是为什么它在那里工作。

如果您在MyStatefulWidget1State状态下创建简单的对象Data类,然后尝试访问其成员变量,则也会遇到相同的错误。

像下面这样。

Data c = Data();
c.value = 'f';

但是我们可以用任何方法来做,所以它将在build方法中工作。

关于flutter - 无法在statefulwidget中定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61505342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com