在 React Native WebView 中启用弹出窗口

2023-12-24

我有一个 React Native 应用程序(使用 React-Native 0.43.3),它使用 WebView 来显示用于网上银行的网页。该网站加载一个带有登录页面的弹出窗口。

对于 ReactNative WebView,此弹出窗口不会显示。在本机 android 中启用弹出窗口显示我发现我需要制作webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true),但是在使用ReactNative WebView时找不到设置该参数的方法。

有没有一种方法可以使用 ReactNative 提供的 WebView 来实现这一点?


不久前,我需要分叉react-native框架,因为iOS中有一个错误WebView当在react-native和native(iOS和Android)之间使用javaScript桥接时,经过一些研究,我得出的结论是我必须分叉repo才能修复它,所以我这样做了。 一周前我需要webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(boolean)方法也是如此,所以我继续将其添加到我的叉子中view.getSettings().setSupportZoom(boolean) and view.getSettings().setSupportMultipleWindows(supports).

如果你想,这是我的叉子 https://github.com/samermurad/react-native/tree/rctWebView-legacy-fix。 请记住,这意味着您需要从源代码为 Android 构建 React-Native,有关此事的更多信息可以找到here https://facebook.github.io/react-native/docs/android-building-from-source.html,说实话有点麻烦,但在某些情况下这是值得的。 该fork来自react-native 0.44.0,您还应该记住,如果您使用我的fork,这意味着当它们发布时您可能无法更新版本,所以这最终取决于您的需求,最坏的情况是你总是可以分叉我的分叉并将其与最新版本合并。

你可以通过修改你的内容来使用 npm 获取我的 forkpackage.json文件然后运行npm update react-native

"dependencies": {
   //... 
   "react-native": "samermurad/react-native#rctWebView-legacy-fix",
   //...
 }

我计划提取修复程序并构建一个单独的 WebView 组件,但我目前太忙了:/

我希望这有帮助:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 React Native WebView 中启用弹出窗口 的相关文章

随机推荐

  • 文字控制模式的区别

    文字控制的直通模式和变换模式有什么区别 您也可以发布一个示例吗 有不同的文字模式Literal Mode 传递 控件的内容不被修改 Encode 控件的内容被转换为 HTML 编码的字符串 转换 不支持的标记语言元素将从控件的内容中删除 如
  • Wix Bootstrapper:Bootstrapper 事件序列

    我已经开始使用托管引导程序类和事件 简而言之 我添加了 Bootstrapper dll 它会给你命名空间 Microsoft Tools WindowsInstallerXml Bootstrapper 我能够从不同博客中提供的一些示例中
  • 如何禁用某些应用程序服务的动态 WebAPI

    我想关闭我的ABP项目中特定应用程序服务的自动WebAPI生成服务 RemoteService 属性可用于将类标记为远程服务或禁用本质上实现 IRemoteService 接口的特定类 RemoteService false public
  • 如何使用 FreeMarker 模板化嵌套 Pojo?

    我正在研究使用 FreeMarker 编写 EDI 文件 这些基本上是严格格式化 并经过验证 的电子发票 我决定从编写一个简单的示例开始 但一直坚持将其模板化为 嵌套 pojo 我的意思是一个 POJO 其中包含 POJO 其中这两个 PO
  • 是什么导致 Docker 映像中出现“无法找到数据收集器‘XPlat 代码覆盖率’”错误?

    我正在 DevOps Server 中设置一个构建 它只需运行 docker 构建 运行容器并从中收集测试结果 Dockerfile 使用 mcr microsoft com dotnet core sdk 2 2 映像作为其基础 在其上我
  • 通过 laravel 创建 stripe 计划

    我想从我的 stripe 应用程序创建一个计划 场景是用户被收取不同的价格作为定期付款 所以 这就是为什么我想为每个用户创建计划 我在用拉拉维尔 5并使用 laravel cashier 5 0 laravel cashier 只是没有内置
  • Eclipse Kepler JPA 错误

    我已经安装了 Eclipse Kepler 内部版本号 20130614 0229 当我尝试编译我的项目时 我遇到了大量与 JPA 相关的错误 我猜它们来自 Dali Java Persistence Tools 插件 我可以在插件列表中看
  • 实体框架 4 和同义词

    如果在数据库 A 中存在一个名为 MyTable 的表 该表实际上来自指向另一个数据库 B 的同义词 我可以在代表数据库 A 的实体框架模型中创建该表作为实体吗 因为它实际上驻留在在不同的数据库中 我很好奇 EF 4 的情况是否有所改善 h
  • 使用javascript查找字符串中最长的单词

    我试图找到字符串中最长的单词 但它不断返回第一个单词的长度 有任何想法吗 这是我的代码 function findLongestWord str var words str split var longest 0 for var i 0 i
  • 如何在 Angular 5 指令中使用 exportAs 来获取模板中的引用?

    我有以下指令 Directive selector changeColor exportAs changeColor export class ColorDirective constructor elem ElementRef rende
  • Android with Retrofit2 OkHttp3 - 多部分 POST 错误

    我在 Android 上使用 Retrofit2 和 OkHttp 进行 HTTP 请求 这里我正在做一个带有文档上传的 POST 请求 我遇到了以下错误 D OkHttp lt 500 Server Error http api driv
  • C# Regex.Match 大括号-仅内容? (不包括大括号)

    我一直无法找到答案 我可以使用Regex Matches方法只返回contents带有大括号的项目 如果我使用正则表达式 my MatchCollection值包括大括号 我想匹配 但只返回内容 这是我到目前为止所拥有的 Regex reg
  • 在Python中以单独显示所有边的方式绘制有向图

    我正在使用 Python 来模拟有向图上发生的过程 我想制作这个过程的动画 我遇到的问题是大多数 Python 图形可视化库将成对的有向边组合成单个边 例如 NetworkX http networkx lanl gov显示下图时仅绘制两条
  • 我怎样才能在 vs 2010 安装项目中为两个不同的发行版本拥有不同的属性等?

    我想要的是我的解决方案中只有一个安装项目 并且我希望能够在一台计算机上同时安装 release1 和 release2 版本 如版本 debug release1 release2 因此 release1 版本需要自己的程序文件夹 产品代码
  • 抓取重定向的页面

    我尝试抓取一个简单的页面 需要欢呼和请求 https www ishares com uk individual en products 251824 https www ishares com uk individual en produ
  • 当 spring.profiles.active 设置多个 Spring 环境配置文件时,优先顺序是什么

    我只是想知道是什么优先顺序是指定多个 Spring 活动配置文件时的顺序 说我想要default配置文件处于活动状态 但dev当有多个相同的元素 例如 bean 可供选择但具有不同的配置文件时 配置文件将覆盖它 比如说我有两个Propert
  • 在 MongoDb 中更新插入字典

    据我所知 mongodb 知道Dictionary作为一个对象 它不能进行任何与数组相关的操作 我更改了序列化并尝试了各种类型的字典序列化 但没有机会 所以我将我的字段 字典 全部 加载到内存中 更新它并将其设置回 mongodb 有什么办
  • setPage() 函数的页码错误:0

    我的 tcpdf 代码是 file to show test details pdf view test details tpl test details smarty gt fetch file to show test details
  • Maven 和 Jenkins - 'mvn' 不被识别为内部或外部命令,

    我正在尝试学习 Jenkins 和 Maven 到目前为止我所做的 安装Maven并设置M2 and M2 HOME作为环境变量 从 eclipse 创建一个简单的 Maven 项目 gt 创建了一个 bat我要移动到的目录中的文件pom
  • 在 React Native WebView 中启用弹出窗口

    我有一个 React Native 应用程序 使用 React Native 0 43 3 它使用 WebView 来显示用于网上银行的网页 该网站加载一个带有登录页面的弹出窗口 对于 ReactNative WebView 此弹出窗口不会