如何从 React Native 的 WebView 组件在 Safari 中打开链接
Posted
技术标签:
【中文标题】如何从 React Native 的 WebView 组件在 Safari 中打开链接【英文标题】:How to open links in Safari from React Native's WebView component 【发布时间】:2016-08-09 04:17:23 【问题描述】:在应用程序中,我使用的是 React Native 的 WebView 组件。如果用户明确单击任何链接,我希望它在 Safari 中打开,而不是将 WebView 组件定向到该 URL。
<WebView
source=uri: 'https://some-url-here'
style=marginTop: 20
/>
【问题讨论】:
【参考方案1】:对于 ios,您可以使用 onShouldStartLoadWithRequest 属性。当 webview 打开新页面时调用该道具。您可以返回 false 停止加载并使用 React native Linking api 在 safari 中打开 url。
您的 onShouldStartLoadWithRequest 可能如下所示:
onShouldStartLoadWithRequest=(navState)=>
Linking.openURL(navState.url)
return false;
【讨论】:
嘿,谢谢,我得出的确切结论。使用链接确实解决了我的问题。谢谢! android 解决方案在这里 - ***.com/a/40382325/1828637 - 链接其他人以上是关于如何从 React Native 的 WebView 组件在 Safari 中打开链接的主要内容,如果未能解决你的问题,请参考以下文章
如何将参数从 React-Native 发送到 Native
无法从“App.js”解析“@react-navigation/native”-React Native + 如何解决?
如何从 react native 调用 swift native 函数?
react-native:ListView,如何从顶部推送新行
如何从 React ^0.14.8 & React-native ^0.24.1 升级到 React 15.0.2 和 React-native 0.26.3