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);
    }
相关推荐
G_dou_13 小时前
Flutter三方库适配OpenHarmony【bmi_calculator】BMI 计算器项目完整实战
flutter·harmonyos
慧海灵舟13 小时前
Flutter × OpenHarmony 开发日记 Day1:从克隆仓库到环境就绪
flutter·写文章,赢小鸿ai
G_dou_15 小时前
Flutter三方库适配OpenHarmony【tip_calculator】小费计算器项目完整实战
flutter·harmonyos
小铁-Android16 小时前
Visual Studio Code创建Flutter项目时包名组织名更改
vscode·flutter
韩曙亮17 小时前
【错误记录】flutter attach 附加设备 执行报错 ( 附加设备注意事项 )
android·javascript·flutter·flutter attach
G_dou_19 小时前
Flutter+OpenHarmony实战level_tool水平仪
flutter·harmonyos
G_dou_19 小时前
Flutter三方库适配OpenHarmony【dice_roller】骰子投掷器项目完整实战
flutter·harmonyos
韩曙亮20 小时前
【Flutter】Flutter 组件 ① ( StatelessWidget 无状态组件 与 StatefulWidget 有状态组件 )
flutter·statefulwidget·statelesswidget
恋猫de小郭20 小时前
Flutter 最好的 AI 自动化测试工具:Patrol
android·前端·flutter