![](/img/trans.png)
[英]React Native: onPress in Android side somehow triggers onNavigationStateChange
[英]onNavigationStateChange not working in Android React Native
你好朋友我想在我的反應原生項目中集成深層鏈接和Android所以下面是我的代碼
<WebView
source={{ uri: this.state.authURL }}
ref="webViewAndroidSample"
renderError={(error) => alert(error)}
startInLoadingState = {false}
javaScriptEnabled = {true}
domStorageEnabled = {true}
onNavigationStateChange = {this._onShouldStartLoadWithRequest}/>
_onShouldStartLoadWithRequest(e){
console.log("URL "+e.url);
}
當我點擊我的 webview 中的其他鏈接時,我沒有在 e.url 中點擊鏈接 url,我記錄了任何想法如何解決這個問題?
根據您的評論,我了解您希望在您的反應本機應用程序中擁有一個 WebView,並在其中加載帶有一些鏈接的 url,這些鏈接打開自定義 url,這將觸發同一應用程序內的其他操作。
我不知道是否有一種簡單的方法可以從 WebView 內部打開深層鏈接,但您可以嘗試不同的方法。 您可以使用 WebView 的 onMessage 方法和 window.postMessage 將消息從網頁發送到您的應用程序,如本博覽會小吃所示
https://snack.expo.io/HJSTrfA2f
注意 onMessage 方法。 在那里,您可以根據從 Web 視圖中獲得的消息插入應用程序的邏輯
onMessage={event => {
alert('MESSAGE >>>>' + event.nativeEvent.data);
}}
onLoadProgress:加載 WebView 時調用的函數。
onLoadProgress={({ e }) => { console.log("URL "e.nativeEvent.url); }}
也許onLoadProgress
函數是你應該實現的。 因為它具有與onNavigationStateChange
非常相似的參數,例如url
、 canGoBack
、 title
等。
將react-native-webview
更新到最新版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.