gpt4 book ai didi

flutter - 在 flutter 中从 Navigator.pushNamed 访问 block

转载 作者:行者123 更新时间:2023-12-04 10:40:54 25 4
gpt4 key购买 nike

我有一个 routing像这样:

routes: {
'/': (context) => MainPage(),
'/othe_page': (context) => OthePage(),
},

Navigator.pushNamed(context, '/othe_page');

如何将 bloc 传递给 OthePage小部件?

最佳答案

1) 将 bloc 作为参数传递

您必须在导航器中将您的集团作为参数传递,如下所示。

Navigator.pushNamed(context, '/deletewidget',
arguments: bloc);

现在您必须在新页面中接受该集团,如下所示。
class _DeleteWidgetState extends State<DeleteWidget> {
var bloc;
@override
Widget build(BuildContext context) {
bloc = ModalRoute.of(context).settings.arguments;

注:您必须在 build 方法中创建 bloc 变量并在 build 方法中分配 bloc 变量。

- 当您返回到最后一个屏幕时,您将无法再访问 bloc。

2) 您可以在父小部件中使用 bloc 提供程序,以便您也可以在新屏幕中访问您的 bloc。

更多详情请查看 Flutter_bloc包裹。

关于flutter - 在 flutter 中从 Navigator.pushNamed 访问 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59936055/

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