屬性介紹:
1.source: 加載的網址。(必須帶http:// 或者https://)
2.automaticallyAdjustContentInsets: 自動調節內容內偏移,控制是否自動調節內容內偏移以便于一個navigation bar或者tab bar或者toolbar不擋住Scrollview中的內容。默認是true。
3.javaScriptEnabled bool : 允許執行js語言,僅限Android平臺。iOS平臺JavaScript是默認開啟的。
4.domStorageEnabled bool : 僅限Android平臺。指定是否開啟DOM本地存儲。
5.decelerationRate: 指定一個浮點數,用于設置在用戶停止觸摸之后,此視圖應以多快的速度停止滾動。也可以指定預設的字符串值,如"normal"和"fast",分別對應UIScrollViewDecelerationRateNormal 和UIScrollViewDecelerationRateFast。 Normal(正常速度): 0.998 Fast(較快速度): 0.9 (iOS WebView的默認值)。
6.onNavigationStateChange : 這個方法無法阻止頁面的跳轉行為,所以大家只能通過這個方法獲取用戶的一些行為。從而做出判斷,當webview顯示的頁面中有 postMessage的同名函數時將會報錯。
onNavigationStateChange = (navState) => {
this.setState({
backButtonEnabled: navState.canGoBack,
forwardButtonEnabled: navState.canGoForward,
url: navState.url,
status: navState.title,
loading: navState.loading,
scalesPageToFit: true
});
};
<WebView
bounces={false}
scalesPageToFit={true}
source={{uri:"http://www.baidu.com"}}
style={styles.webView}>
</WebView>
7.onShouldStartLoadWithRequest: 允許為webview發起的請求運行一個自定義的處理函數。返回true或false表示是否要繼續執行響應的請求。
8.scalesPageToFit bool :設置是否要把網頁縮放到適應視圖的大小。
9.mediaPlaybackRequiresUserAction bool : 設置頁面中的HTML5音視頻是否需要在用戶點擊后再開始播放。默認值為true.
10.onError function :加載失敗時調用。
11.onLoad function :加載成功時調用。
12.onLoadEnd function :加載結束時(無論成功或失敗)調用。
12.onLoadStart function :加載開始時調用。
13.onMessage function :在webview內部的網頁中調用window.postMessage方法時可以觸發此屬性對應的函數,從而實現網頁和RN之間的數據交換。 設置此屬性的同時會在webview 中注入一個postMessage的全局函數并覆蓋可能已經存在的同名實現。網頁端的window.postMessage只發送一個參數data,此參數封裝在RN端的event對象中,即event.nativeEvent.data。data只能是一個字符串
14.renderError function :設置一個函數,返回一個視圖用于顯示錯誤。
15.renderLoading function : 設置一個函數,返回一個加載指示器。
16.startInLoadingState bool :強制WebView在第一次加載時先顯示loading視圖。默認為true。