繁体   English   中英

如何将 onTap() 的值从页面传递到另一个 dart/flutter

[英]how to pass value of onTap() from a page to another dart/flutter

我试图将 onTap() 中的值存储到变量中以在另一个页面中使用它

onTap: () {
                    getCourseName(doc["Course name"]);
                    Navigator.push(
                      context,
                      PageTransition(
                        type: PageTransitionType.rightToLeft,
                        child: XDSections(),
                      ),
                    );
                  },

此代码在页面课程中使用我想以某种方式使用此值页面部分

我怎么做 ?

您可以在导航到下一个屏幕时将课程名称作为参数传递。

Navigator.push(
    context,
    PageTransition(
        type: PageTransitionType.rightToLeft,
        child: XDSections(),
    ),
    arguments: {'courseName': "PASS_YOUR_VALUE_HERE"}
);

在下一个屏幕上,您可以通过以下方式获得该值:

var arguments = ModalRoute.of(context).settings.arguments;

您可以在 Navigator.push() 中使用 (arguments) 参数,以便将数据从一个页面传递到另一个页面。 例子:

              Navigator.push(
                  context,
                  MaterialPageRoute(
                    builder: (context) => XDSections(),
                    settings: RouteSettings(
                      arguments: "Passed Data",
                    ),
                  ),
                );

并在 XDSections Build Widget 上接收它:

final args = ModalRoute.of(context)!.settings.arguments as String;

有关文档的更多信息

这里也有更详细的回答。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM