這是我用於以前項目的Webview。
<WebView
ref="webview"
source={{uri:this.state.url}}
onNavigationStateChange={this._onNavigationStateChange.bind(this)}
javaScriptEnabled = {true}
domStorageEnabled = {true}
injectedJavaScript = {this.state.cookie}
startInLoadingState={false}
/>
爲您關鍵的是這一行:
onNavigationStateChange={this._onNavigationStateChange.bind(this)}
,你可以這樣寫的網址:
_onNavigationStateChange(webViewState){
console.log(webViewState.url)
}
如果我沒有記錯這個火災3次加載URL時。
webviewState對象原型:
{
canGoBack: bool,
canGoForward: bool,
loading: bool,
target: number,
title: string,
url: string,
}
第三(最終)時間這個事件被調用時,裝載屬性是假
讓我知道,如果它幫助。
來源
2016-08-23 11:27:50
dv3
它的工作原理。謝謝。有沒有關於webViewState細節的任何解釋? – bns
如何檢測只有網址/哈希值的變化?如果網站不更改狀態,onNavigationStateChange不會觸發。 – chetan
@chetan會不會改變源呢?我很長時間沒有與RN合作過 – dv3