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);
    }
相关推荐
早點睡3901 分钟前
Flutter for Harmony 跨平台开发实战:希尔伯特曲线——空间填充的无限递归
flutter
lqj_本人1 小时前
Flutter三方库适配OpenHarmony【apple_product_name】FlutterPlugin接口实现详解
flutter
lqj_本人2 小时前
Flutter三方库适配OpenHarmony【apple_product_name】插件注册与生命周期管理
flutter
早點睡3902 小时前
进阶实战 Flutter for OpenHarmony:AnimatedBuilder 组件实战 - 自定义动画系统
flutter
程序员老刘3 小时前
跨平台开发地图:React Native 0.84 强力发布,Hermes V1 登顶 | 2026年2月
flutter·客户端
松叶似针4 小时前
Flutter三方库适配OpenHarmony【doc_text】— .docx 解析全流程:从 ZIP 解压到 XML 提取
xml·flutter·harmonyos
lqj_本人5 小时前
Flutter三方库适配OpenHarmony【apple_product_name】MethodCallHandler消息处理机制
flutter
西西学代码5 小时前
Flutter---事件处理
flutter
lqj_本人7 小时前
Flutter三方库适配OpenHarmony【apple_product_name】deviceInfo系统API调用
flutter