如何在flutter fluro中传递多个参数

问题描述 投票:0回答:1

我正在使用flutter fluro进行路由。我只能传递一个参数,并能够在页面中访问它。我该如何发送多件物品?

这是我如何使用

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

我这样称呼这个

Navigator.pushNamed(context, "/about/23");

现在我想传递多个这样的变量

Navigator.pushNamed(context, "/about/23/newdata");

我试图像这样访问这些新数据

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

它不起作用。它给我这样的错误

Could not find a generator for route RouteSettings("/about/23/newdata", null) in the

flutter:_WidgetsAppState。

dart flutter flutter-dependencies
1个回答
1
投票

这是一个访问所有参数的示例:

router.define(
      '/testpage/:param1/:param2/:param3',
      handler: Handler(
        handlerFunc: (BuildContext context, Map<String, dynamic> params) {
          print('Navigate to TestPage');
          var param1 = params['param1'][0];
          var param1 = params['param2'][0];
          var param1 = params['param3'][0];
        },
      ),
    );

所以对你来说:

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

祝你今天愉快 !

© www.soinside.com 2019 - 2024. All rights reserved.