我使用的是flutter_riverpod
软件包。
我想把ConsumerWidget
转换成ConsumerStatefulWidget
。
但是,我花了很多时间才这样做:
1.(代码)
class Widget extends ConsumerWidget {
const Widget({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
return …;
}
}
1.(删除ref
)
class Widget extends ConsumerWidget {
const Widget({super.key});
@override
Widget build(BuildContext context) {
return …;
}
}
1.(将ConsumerWidget
更改为StatelessWidget
)
class Widget extends StatelessWidget {
const Widget({super.key});
@override
Widget build(BuildContext context) {
return …;
}
}
1.(由Convert to StatefulWidget
操作转换)
class Widget extends StatefulWidget {
const Widget({super.key});
@override
State<Widget> createState() => _WidgetState();
}
class _WidgetState extends State<Widget> {
@override
Widget build(BuildContext context) {
return …;
}
}
1.(添加Consumer
字)
class Widget extends ConsumerStatefulWidget {
const Widget({super.key});
@override
ConsumerState<Widget> createState() => _WidgetState();
}
class _WidgetState extends ConsumerState<Widget> {
@override
Widget build(BuildContext context) {
return …;
}
}
如你所见,我需要用5个步骤来做。有更快的方法吗?
如果您需要更多信息,请随时发表评论。
如何更容易地将ConsumerWidget
转换为ConsumerStatefulWidget
?我将感激任何帮助。提前感谢!
1条答案
按热度按时间eit6fx6z1#
如果我的
ConsumerWidget
没有参数,ConsumerStatefulWidget
。ConsumerWidget
的build
方法的内容复制到新创建的小部件。ConsumerWidget
中还有其他方法)将ConsumerWidget
中的内容复制到新建的widget中,然后从build
中删除ref
。ConsumerWidget
。如果我的
ConsumerWidget
有参数,那么我的操作和您一样,因为否则我将不得不在小部件变量之前添加一个widget.
。