当前位置: 首页 > news >正文

Flutter 嵌套H5 传参数

你可以通过在加载 H5 页面时,将 token 作为 URL 参数拼接,或者通过 WebView 的 JavaScript 通信功能(如 runJavaScript 或 addJavaScriptChannel)传递 token。常用方式如下:

方式一:URL 拼接参数

假设你的 token 是 myToken,可以这样:

// filepath: [home.dart](http://_vscodecontentref_/0)
class HomePage extends StatelessWidget {final String token;const HomePage({super.key, required this.token});@overrideWidget build(BuildContext context) {final url = 'https://www.baidu.com?token=$token';return Scaffold(appBar: AppBar(title: const Text('首页')),body: SafeArea(child: WebViewWidget(controller: WebViewController()..setJavaScriptMode(JavaScriptMode.unrestricted)..loadRequest(Uri.parse(url)),),),);}
}

方式二:通过 JavaScript 注入

如果不想暴露在 URL,可以在页面加载完成后注入 token:

// filepath: [home.dart](http://_vscodecontentref_/1)
class HomePage extends StatelessWidget {final String token;const HomePage({super.key, required this.token});@overrideWidget build(BuildContext context) {final controller = WebViewController()..setJavaScriptMode(JavaScriptMode.unrestricted)..loadRequest(Uri.parse('https://www.baidu.com'))..setNavigationDelegate(NavigationDelegate(onPageFinished: (url) {controller.runJavaScript("window.setToken && window.setToken('$token');");},),);return Scaffold(appBar: AppBar(title: const Text('首页')),body: SafeArea(child: WebViewWidget(controller: controller),),);}
}

这种方式需要 H5 页面实现 window.setToken 方法来接收 token。

你可以根据实际需求选择合适的方式。这种方式需要 H5 页面实现 window.setToken 方法来接收 token。

你可以根据实际需求选择合适的方式。

相关文章:

  • 芯片:数字时代的算力引擎——鲲鹏、升腾、海光、Intel 全景解析
  • 快捷键IDEA
  • [网页五子棋][匹配模式]创建房间类、房间管理器、验证匹配功能,匹配模式小结
  • Python打卡训练营Day40
  • 《 PyTorch 2.3革新:torch.compile自动生成CUDA优化内核全解》
  • 使用 SymPy 操作三维向量的反对称矩阵
  • 树莓派安装openwrt搭建软路由(ImmortalWrt固件方案)
  • 历年厦门大学计算机保研上机真题
  • Prevent this information from being displayed to the user 修复方案
  • day14 leetcode-hot100-26(链表5)
  • vscode实时预览编辑markdown
  • Java Spring Boot 自定义注解详解与实践
  • Camera相机人脸识别系列专题分析之六:MTK ISP6S平台人脸识别fdnode流程FdNodeImp.cpp详解
  • 历年四川大学计算机保研上机真题
  • rm删除到回收站
  • RustDesk 搭建自建服务器并设置服务自启动
  • deepseek问答记录:请讲解一下torch.full_like()
  • 大数据量下的数据修复与回写Spark on Hive 的大数据量主键冲突排查:COUNT(DISTINCT) 的陷阱
  • 基本数据指针的解读-C++
  • Visual Studio中的宏变量
  • 网站的配置标题/线上营销怎么做
  • 杭州定制网站公司/哪家公司网站做得好
  • 网站开发建设类合同/恢复原来的百度
  • 建设网站英语/2023适合小学生的新闻事件
  • 南京建网站/seo站内优化技巧
  • 无锡网站建设工作室/淘宝指数网址