Flutter路由管理三方Fluro使用(三)

本文阐述一些Fluro使用小细节
在Fluro中,我们需要对每个页面分别定义一个handler

var buyPageHandler = Handler(
        handlerFunc: (BuildContext context, Map<String, dynamic> params) {
          var data = params['id'][0];
      return BuyPage(data);
    });

那么我们跳转的时候就需要传一个参数进来

MyAppRouter.router.navigateTo(context, '/users/1234?id=$a',
                transition: TransitionType.fadeIn),

为什么用'id'这个key?

使用id或者任何其他合理的字符串都可以,只要方便书写和管理。
全部的页面都可以使用相同的key。

为什么用[0]?

[0]表示数组的第一个元素。params其实是一个List<String>格式的数组
,而且长度只有1。
我们可以改造一下handler的定义

var buyPageHandler = Handler(
        handlerFunc: (BuildContext context, Map<String, List<String>> params) {
          var data = params['id'].first;
      return BuyPage(data);
    });

为什么是'/users/1234?id=$a'

这是固定格式

'路由name?key=value'
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容