Flutter Getx 路由

普通路由导航

  1. 跳转到NextScreen
Get.to(() => NextScreen());           这个过期了: Get.to(NextScreen());    前面的写法,Controller会随着page一些从内存移除,过期的写法就不行。
  1. 关闭SnackBars、Dialogs、BottomSheets或任何你通常会用Navigator.pop(context)关闭的东西。
Get.back();
  1. 关闭本页,并进入NextScreen。按返回不会回到本页了。(用于SplashScreens,登录页面等)。
Get.off(NextScreen());
  1. 关闭之前的所有页面,然后进入NextScreen(在购物车、投票和测试中很有用)。
Get.offAll(NextScreen());
  1. 回退页面,直到RootPage。 停留在RootPage页面。
    util里面的内容,为true就停止。
    下面表示判断当前路由是否是RootPage,如果是就停止。
    RootPage并不是命名路由,并不需要提前命名。这个只是判断当前页面的名字,是否叫做: “/RootPage”
Get.until((route) => (route as GetPageRoute).routeName == '/RootPage');
  1. 回退页面,直到IndexPage,然后跳转GifPage。
    注意,这里有个超级大坑:一般我们用这个是期望回退到主页,然后跳转到某个页面。但是如果在app里面,直接跳转的IndexPage,那么始终实现不了这样的功能,一直报错。看情况是,route里面,并没有IndexPage这个,而是 / ,但是直接用 / ,也无法判断。所以,需要在app的home,也就是第一个页面,搞个闪屏。这样就有IndexPage这个路由,就可以回退到这里。
    在这里插入图片描述
Get.offUntil(GetPageRoute(page: () => const GifPage()),(route) => (route as GetPageRoute).routeName == '/IndexPage');
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值