React Native Webview 处理 url 更改侦听器

2023-12-31

可以在 React Native Web 视图上处理 URL 更改。

我尝试处理onNavigationStateChange听众。但它只发射一次。当页面加载时触发 onNavigationStateChange。当我导航到另一个页面时,此事件不会触发。

任何想法?


参考import { WebView } from 'react-native-webview'您可能正在使用旧版本的 webview 请尝试更新或尝试以下操作code/method获取当前导航path/url.

在你的情况下onNavigationStateChange不返回导航路径,因此您可以尝试使用onLoadProgress返回 url 中的每个更改。

而不是这个

 onNavigationStateChange={(state) => {
  console.log("current_path",path);

 }}

try this

这可能会被多次调用,请相应地处理您的情况。

 onLoadProgress={({ path}) => {
 console.log("current_path",path);
 }}

这就是我的 WebView 的样子

  <WebView
    source={{ uri: this.state.url }}
    onLoadEnd={() => this.hideSpinner()}
    onMessage={onMessage.bind(this)}
    ref={WEBVIEW_REF => (this.WebViewRef = WEBVIEW_REF)}
    startInLoadingState={true}
    javaScriptEnabled={true}
    domStorageEnabled={true}
    onLoadProgress={({ nativeEvent }) => {
       //your code goes here       
    }}
    onNavigationStateChange={(state) => {
       //your code goes here       
    }} 
   />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React Native Webview 处理 url 更改侦听器 的相关文章

随机推荐

  • G++ 为未使用的模板特化生成代码?

    在我正在处理的项目的一些序列化代码中 我有一个类型 其大小取决于编译器 为了解决这个问题 我决定使用模板专业化 效果很好 一切都在编译时解决 代码看起来有点像这样 不是真正的代码 只是一个例子 template
  • 角度种子 web-script.js 和 cors

    我已经第二天了 我试图从外部域获取一些 json 但我打破了 CORS 我几乎确定如何在 AngularJS 资源中使用 JSONP https stackoverflow com questions 20025711 how to use
  • 适用于 UWP 的 Google API 与自定义重定向方案配合不佳

    我正在编写一个可与 Google Drive API 配合使用的 UWP 应用程序 我的问题似乎出在 Google 针对 UWP 应用程序的糟糕文档 在文档中它指出 此外 您可以使用客户端 ID 的反向 DNS 概念作为自定义 URI 方案
  • 如何在WebView中打开视频播放器?

    我有一个带有 Webview 的 WebApp 在这些页面中 我有一些视频链接 MP4 3GP 当我点击链接时 没有任何反应 public class luxgateway extends Activity WebView myWebVie
  • 具有属性的 Maven 版本

    我有大约 400 个插件的大型 Maven Tycho 项目 我们在每个 POM 文件中指定了应用程序的版本 有没有一种方法可以仅在一个地方指定所有 POM s 的版本 我希望有些人会这样想
  • MySQL 中布尔值的 Boolean 与tinyint(1)

    在 MySQL 数据库中 哪种列类型最适合用于布尔值 我用boolean但我的同事使用tinyint 1 这些数据类型是同义词
  • 将动态生成的复选框添加到react-table并捕获行数据

    我在使用此反应表包向行添加复选框时遇到问题https react table js org story readme https react table js org story readme 我正在尝试向表中的每一行添加一个复选框 我尝试
  • 如果 HTTP_X_FORWARDED_FOR 包含多个 IP 地址,如何从 HTTP_X_FORWARDED_FOR 获取正确的 IP?

    如果 Request ServerVariables HTTP X FORWARDED FOR 返回多个 ip 我应该采用哪一个 以及在 C 中如何执行 据我了解 如果它为空或为空 则客户端计算机不会通过代理 我可以从 Request Se
  • 将文本框绑定到浮点值。无法输入点/逗号

    例如 当我尝试在文本框中输入点或逗号时1 02 or 83 33文本框阻止我输入这样的值 并且输入变成红色 文本框绑定到浮动属性 为什么 我已将文本框绑定到浮动属性Power一个类的实现INotifyPropertyChanged priv
  • Resharper 测试运行程序:无法加载文件或程序集“System.Windows”

    我目前在 VS2012 和 Resharper 7 1 2 上运行单元测试 Nunit 时遇到问题 完整的错误消息在这里 单元测试运行程序无法运行测试 System IO FileNotFoundException 无法加载文件或程序集 S
  • 具有软删除功能的通用存储库

    我有一个通用存储库实现 我正在使用 asp net mvc c 代码优先实体框架 我创建了一个名为 ISoftDelete 的接口 public interface ISoftDelete bool IsDeleted get set 我在
  • Bower 安装显示提示输入信息 debian

    我在尝试在我的项目上执行凉亭安装时遇到问题 我只是在执行凉亭安装我的 Debian 操作系统上的命令 但是当这是识别我的 Bower json 上定义的依赖项时 它被困在我不明白的部分 这是我在命令行中看到的最后一部分 dependenci
  • 如何在 Spring 中使用 Hibernate 将对象列表映射到表中?

    我正在尝试将用户列表映射到位置对象 但出现映射异常 这是因为List对象不被数据库识别 或者为什么我会得到这个异常 这是我的用户类别 Entity Table name users public class NewUser extends
  • 切换 DataGridView 行选择,其中 SelectionMode 为 FullRowSelect

    我有一个 DataGridView 其中 SelectionMode FullRowSelect 和 MultiSelect False 当用户单击一行时 它会按预期被选中 但是 再次单击同一行不会取消选择该行 如何使行选择在选定和未选定之
  • Django 登录不重定向到索引

    我有一个登录屏幕 在成功进行身份验证后 它应该在同一基本 URL 上显示用户详细信息 这些天它一直工作得很好 突然间它抛出 302 响应代码HTTP POST login 302 0 60 127 0 0 1 53864 当输入正确的用户名
  • Git 分叉和拉取请求工作流程

    我有一个反应项目的仓库 我想将该存储库作为其他几个项目的 基础 并将其作为起点 我还想根据 基地 的情况保持所有其他源自它的仓库是最新的 我使用 Bitbucket 进行远程存储库托管 并在本地使用 Tower 作为一个不错的 GUI 正确
  • 编译器通常使用寄存器来实现其“预期”目的吗?

    我一直在学习汇编 并且了解到四个主要的 x86 通用寄存器 eax ebx ecx 和 edx 每个都有一个预期或建议的用途 例如 eax是累加器寄存器 ecx用作循环的计数器 等等 大多数编译器是否尝试将寄存器用于建议的目的 或者它们是否
  • Vista 64 编写的代码在 32 位操作系统上兼容吗?

    我们正在购买新的开发机器并升级到 Vista 64 Ultimate 以利用我们的 8GB 内存 我们的经理希望我们在 32 位虚拟机中进行所有开发 以确保我们的代码在投入生产时不会出现问题 有什么方法可以保证生成的程序可以在 32 位操作
  • Android:共享首选项不保存按钮的状态

    我有一个包含三个活动的选项卡主机 并且在每个活动中都有按钮 每次按下按钮时 我都会更改背景可绘制资源 那么现在如何保存所有三个子活动中每个按钮的按下状态 以便当我从一个活动移动到另一个活动时 按钮的按下状态将反映在向后移动时 第一个活动 g
  • React Native Webview 处理 url 更改侦听器

    可以在 React Native Web 视图上处理 URL 更改 我尝试处理onNavigationStateChange听众 但它只发射一次 当页面加载时触发 onNavigationStateChange 当我导航到另一个页面时 此事