简介: flutter的路由管理与平时PC和app的工作原理一样,思路:知道使用流程和配置流程,进行配置和使用


  1. 第一步:在pages/routers下有Routers.dart文件,当前文件属于router配置文件,这个几乎是固定写法,如果有新的路由页面,继续添加即可,代码如下
import 'package:flutter/material.dart';
import 'package:cai_customer/pages/Login/LoginPage.dart';
import '../pages/Tab.dart' as TabContainer;final Map<String, Object> routes = {'/': (context) => TabContainer.Tab(),'/login': (context) => LoginPage(),
};//固定写法
var onGenerateRoute = (RouteSettings settings) {// 统一处理final String name = settings.name;final Function pageContentBuilder = routes[name];if (pageContentBuilder != null) {if (settings.arguments != null) {final Route route = MaterialPageRoute(builder: (context) =>pageContentBuilder(context, arguments: settings.arguments));return route;} else {final Route route =MaterialPageRoute(builder: (context) => pageContentBuilder(context));return route;}}
};
  1. 第二步:注册router,在入口文件main.dart里面进行操作:
    关键代码:
 @overrideWidget build(BuildContext context) {ErrorWidget.builder = (FlutterErrorDetails errorDetails) {return getErrorWidget(context, errorDetails);};return new MaterialApp(localeListResolutionCallback:(List<Locale> locales, Iterable<Locale> supportedLocales) {return Locale('zh');},localeResolutionCallback:(Locale locale, Iterable<Locale> supportedLocales) {return Locale('zh');},localizationsDelegates: [GlobalMaterialLocalizations.delegate,GlobalWidgetsLocalizations.delegate,GlobalCupertinoLocalizations.delegate,],supportedLocales: [const Locale('zh', 'CH'),const Locale('en', 'US'),],debugShowCheckedModeBanner: false,initialRoute: '/login', //默认进入login页面onGenerateRoute: onGenerateRoute,   //路由注册builder: EasyLoading.init(),);}
}

注意:main.dart注册的onGenerateRoute和routers里面定义的onGenerateRoute统一的。

  1. 第三步:router跳转
//下面 _toggleFavorite只是一个方法调用:
child: InkWell(onTap: () {_toggleFavorite();},child: Text("查看",style: TextStyle(color: Colors.orange,fontSize: 12)),
),
void _toggleFavorite() {Navigator.pushNamed(context, '/orderDetail', arguments: data);}

注意:arguments传参使用;routers.dart里面也对应了相应的参数配置

QQ技术交流群:707 196 135  (大前端技术交流群)

flutter-Routers基础介绍相关推荐

  1. Flutter之基础Widget

    原文博客地址: Flutter之基础Widget Flutter和Dart系列文章 项目GitHub地址 Flutter作为一种全新的响应式,跨平台,高性能, 完全免费.开源的移动开发框架 Widge ...

  2. Flutter学习-基础Widget

    Flutter学习-基础Widget 1. Flutter编程范式 1.1 编程范式的理解 1.2 flutter的编程范式 2. Text Widget 2.1 普通文本展示 2.2 富文本 2.3 ...

  3. day23:shell基础介绍 alias及重定向

    2019独角兽企业重金招聘Python工程师标准>>> 1.shell基础介绍: shell是一个命令解释器,用于用户与机器的交互: 也支持特定的语法(逻辑判断,循环): 每个用户都 ...

  4. Android NDK开发之 NEON基础介绍

    原文:http://blog.csdn.net/app_12062011/article/details/50434259 Android NDK开发之 NEON基础介绍 这是官方介绍: http:/ ...

  5. python介绍和用途-Python基础介绍(一)

    Python基础介绍(一) 1. python是什么编程语言 编译型与解释型 ​编译器吧源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以极其语言来运行此程序,速度很快 ...

  6. STL体系结构与内核分析-2-STL体系结构基础介绍(侯捷)--笔记

    STL体系结构与内核分析(侯捷) 2.STL体系结构基础介绍 STL设计方式与OO(面向对象)不同的地方,OO鼓励数据和处理数据的方法都放在类里,而STL的数据在容器里,操作数据的方法在其他部件里(模 ...

  7. ai一个线段多个箭头_初学设计却分不清PS和AI?超详细的AI基础介绍包你一看即会!...

    以前提到AI,第一个想到的就是人工智能.自从扎进设计的神坑,再提到AI,我可只认软件了~ 包括小ke在内的很多设计小伙伴在最开始入行的时候都认为,只要学好PS就可以稳打设计圈了~毕竟那么多公号一提到设 ...

  8. 深度学习与计算机视觉系列(1)_基础介绍

    转载自: 深度学习与计算机视觉系列(1)_基础介绍 - 龙心尘 - 博客频道 - CSDN.NET http://blog.csdn.net/longxinchen_ml/article/detail ...

  9. 【学习笔记】Tableau基础介绍

    Tableau基础介绍 [简介] Tableau是一家提供商业智能的软件公司,正式成立于2004年,总部位于美国华盛顿西雅图. 源自美国国防部的一个项目需求,在斯坦福博士克里斯·斯图尔特和Pixar创 ...

  10. python最基本的规则是什么_Python基础介绍(一)

    Python基础介绍(一) 1. python是什么编程语言 编译型与解释型 ​编译器吧源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以极其语言来运行此程序,速度很快 ...

最新文章

  1. 亚马逊科学家Nikko Ström:将人工智能助理日常化的梦想照进现实
  2. iis7 php oracle,PHP+IIS7配置OCI8链接Oracle 10G的方法
  3. Chapter 17 高级进程间通信
  4. 【Foreign Key】Oracle外键约束三种删除行为
  5. Windows 系统下Git安装图解
  6. EntityFramework Core如何映射动态模型?
  7. JMS 在 SpringBoot 中的使用
  8. PAT乙:1009 说反话
  9. 特斯拉车顶维权女车主称被恐吓 将公布特斯拉提供的不完整数据
  10. Ubuntu 搭建Facebook ATC弱网测试环境 使用路由器搭建ATC
  11. 方正电脑如何关闭网络启动计算机,方正电脑怎么进安全模式
  12. 如何打印被加密的PDF文件
  13. VS中javascript注释快捷键
  14. Axure RP 7.0学习
  15. 关于HTML系统学习(1)
  16. 线性拟合——离群点outliers的处理
  17. Java 深入掌握JMS:JSM基础
  18. 微信开发(三)创建菜单
  19. Python测试工具-Pytest使用详解
  20. 2019秋招阅文数据分析:sql查询连续天数

热门文章

  1. arch nvidia驱动安装记录
  2. oracle安装 redo log,Oracle Redo Log 及Logmnr配置使用
  3. wannier插值能带拟合1
  4. el-table设置表头样式,在table行间加入
  5. 一个好的肖像造型需要学习哪些3D建模知识?
  6. 高性价比40W双C口氮化镓快充方案,提供Demo板测试!
  7. hiddenlayer安装
  8. 达梦8 DCA学习笔记
  9. win10家庭版计算机登录名,怎样让Win10专业版/企业版/家庭版的登录界面显示用户名输入框...
  10. VBA运行将多个excel的矩阵类型数据转为向量数据