Flutter go_router库push导航后,浏览器地址栏的地址不更新的问题

如果你使用.push()方法进行导航后,浏览器的地址栏的地址并没有更新,那是因为go_router经过了一次变更修改行为导致的。
配置下边的GoRouter.optionURLReflectsImperativeAPIs = true;代码就行了。
也可以去optionURLReflectsImperativeAPIs看属性说明。


原文


关于如何查看路由栈的列表,参考

final GoRouter goRouter = createRouter();

// TODO: routeExists implementation is a workaround to known issue: https://github.com/flutter/flutter/issues/117514

bool routeExists(String route) {
  try {
    return goRouter.routeInformationParser.configuration.findMatch(route).matches.isNotEmpty;
  } catch (err) {
    return false;
  }
}

https://github.com/flutter/flutter/issues/157840
https://github.com/flutter/flutter/issues/117514

posted @   星小梦  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
历史上的今天:
2022-10-31 【翻译】确定元素的尺寸
2022-10-31 安卓游戏 obb和apkb格式的数据包安装方式
点击右上角即可分享
微信分享提示