【问题标题】:How to get params from route to other screen?如何从路由到其他屏幕获取参数?
【发布时间】:2018-06-01 09:27:02
【问题描述】:

我想在那里向你征求意见。

我是 Flutter 开发新手,但我遇到了一个似乎无法解决的问题。

目前我正在使用 Fluro Plugin 进行路由。

ma​​in.dart 我定义了路线:

router.define('joke/:id', handler: new Handler(
  handlerFunc: (BuildContext context, Map<String, dynamic> params) {
return new Joke();
}));

在此之后,我将带有参数的这条路线推送到我的 home.dart

onTap: () => Navigator.pushNamed(context, 'joke/' + '${document.documentID}'),

我正在尝试将生成的参数添加到 joke.dart

您能告诉我如何完成这项工作吗?提前致谢。

【问题讨论】:

    标签: flutter


    【解决方案1】:

    根据documentation,您可以访问参数中的值

    router.define('joke/:id', handler: new Handler(
      handlerFunc: (BuildContext context, Map<String, dynamic> params) {
    return new Joke(params["id"][0]);
    

    假设您将通过构造函数 arg 将值(在本例中为 documentId)传递给 Joke 类

    【讨论】:

    • 您好,感谢您的回答。我正在尝试从课堂上获取论点(请参阅附图)我得到的结果是: Receiver: Instance of 'Joke' 。 image.ibb.co/dMhM8J/flutter_screenshot.png
    • 已解决。我只需要重新启动应用程序
    • @CvetanKaradjov 请接受答案,以便人们看到它有效。
    猜你喜欢
    • 1970-01-01
    • 2021-01-22
    • 2013-05-06
    • 1970-01-01
    • 2018-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多