171.flutter之命名路由的使用

例子

用静态常量来查找初始页

initialRoute: WelcomeScreen.id,
      routes: {
        WelcomeScreen.id: (context) => WelcomeScreen(),
        'login_screen': (context) => LoginScreen(),
        'registration_screen': (context) => RegistrationScreen(),
        'chat_screen': (context) => ChatScreen(),
      },
  1. 使用静态常量来查找初始页面
  2. 在类中的const修饰的常量需要用static修饰
    原因:在创建类的多个对象时,用static修饰的常量在内存中只有一份拷贝。不用static修饰则可能有多份拷贝 .
  3. 静态方法也可直接调用因为不是构造而来的了。

不用静态常量来查找初始页面

 initialRoute: WelcomeScreen().id,//注意不同点在这
      routes: {
        WelcomeScreen().id: (context) => WelcomeScreen(),//注意不同点在这
        'login_screen': (context) => LoginScreen(),
        'registration_screen': (context) => RegistrationScreen(),
        'chat_screen': (context) => ChatScreen(),
      },

这样同样能找到页面但会构造整个WelcomeScreen类,这里面有许多是我们所不需要的。合理使用静态变量查找页面会大大提升效率。

这种id命名方式要比官方文档的反斜杠的方法清晰,以后就使用这种

 initialRoute: WelcomeScreen.id,
      routes: {
        WelcomeScreen.id: (context) => WelcomeScreen(),
        LoginScreen.id: (context) => LoginScreen(),
        RegistrationScreen.id: (context) => RegistrationScreen(),
        ChatScreen.id: (context) => ChatScreen(),
      },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值