Flutter InAppWebView 路由导航处理

flutter InAppWebView路由导航处理,有以下两种处理方案:

  1. H5层控制路由,H5拥有自己的路由,当返回到跟路由root时,此时点击跟节点,通过jsbridge调用flutter提供的方法来关闭当前widget,flutter关闭方法如下:

    Dart 复制代码
    value.addJavaScriptHandler(
        handlerName: "closeInAppWebView",
        callback: (args) {
          //关闭当前widget  
          Navigator.pop(context);
        });
  2. flutter层控制路由,通过InAppWebViewController中canGoBack()判断是否可以返回,可以返回调用goBack(),否则关闭当前widget。代码如下:

    Dart 复制代码
    if (await inAppWebViewController!.canGoBack()) {
        //返回路由上一层
        inAppWebViewController!.goBack();
    } else {
        //关闭当前widget
        Navigator.pop(context);
    }
相关推荐
icc_tips8 小时前
Flutter 的Async/Await 日常使用
flutter
造梦师8 小时前
flutter基础面试知识汇总(二)
flutter
vvilkim8 小时前
Flutter 核心概念:深入理解 StatelessWidget 与 StatefulWidget
开发语言·javascript·flutter
sunly_8 小时前
Flutter:导航背景固定在顶部,下拉分页布局
开发语言·javascript·flutter
明似水8 小时前
使用 Melos 高效管理 Flutter/Dart Monorepo 项目
flutter
zacksleo11 小时前
哪些鸿蒙原生应用在使用Flutter
前端·flutter·harmonyos
vvilkim12 小时前
Flutter布局系统全面解析:从基础组件到复杂界面构建
flutter
程序员老刘13 小时前
MCP:新时代的API,每个程序员都应该掌握
人工智能·flutter·mcp
恋猫de小郭13 小时前
Flutter 小技巧之:实现 iOS 26 的 “液态玻璃”
android·前端·flutter
帅次13 小时前
Flutter Container 组件详解
android·flutter·ios·小程序·kotlin·iphone·xcode