我现在在我的代码中使用StatelessWidget
。我在StatelessWidget
的build
方法中有TextEditingController
,我想添加dispose
方法来处理它。但是,dispose
方法只在StatefulWidget
中可用。你建议我把StatelessWidget
改成StatefulWidget
吗?
我代码:
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final TextEditingController controller = TextEditingController();
return Scaffold(
body: Center(
child: TextField(controller: controller),
),
);
}
}
我提到了这个问题,但它没有回答我的问题,因为它的问题是StatelessWidget是否会自己做这件事。
如果你需要更多的信息,请随时留下评论。
我应该使用哪个,StatelessWidget
或StatefulWidget
?我将感激任何帮助。提前感谢!
如果您将处置方法添加到TextField
StatefulWidget
的代码StatelessWidget
不支持todispose
方法。参考这个答案
如果你使用Android Studio编辑器进行编码,只需将光标移动到StatelessWidget
并按下alt + enter
,然后将其换行StatefulWidget
如果你使用VS代码编辑器进行编码,只需将光标移动到StatelessWidget
并按下ctrl + .
并将其包裹StatefulWidget
关于这个问题也可以参考更多
您需要使用StatefulWidget
作为dispose
方法进入StatefulWidget
。StatelessWidget
不支持dispose方法