React Native Progress WebView is a wrapper of React Native WebView to provide a loading bar on the top of the browser.
- iOS (both UIWebView and WKWebView)
- Android
Firstly, read the Getting Started Guide on React Native WebView page to configure the webview component.
Then
$ npm install --save react-native-progress-webview
Import the ProgressWebView
component from react-native-progress-webview
and use it like so:
import React, { Component } from 'react';
import { StyleSheet, Text, View } from 'react-native';
import ProgressWebView from "react-native-progress-webview";
// ...
class App extends Component {
render() {
return (
<ProgressWebView source={{ uri: 'https://facebook.github.io/react-native/' }} />
);
}
}
React Native Progress Webview supports all React Native Webview props. Read the API Reference to explore. There are a couple of exclusive props related to the loading bar.
prop | type | default | description |
---|---|---|---|
height | number | 3 | the height of loading bar |
color | string | #3B78E7 | the normal color of loading bar |
errorColor | string | #f30 | the error color of loading bar |
disappearDuration | number | 300 | the visible duration after the webview finishes the loading |
It's same as using raw WebView. You can just pass a ref
prop to get the instance.
class App extends Component {
constructor(props){
super(props);
this.ref = React.createRef();
}
componentDidMount() {
console.log(this.ref.current);
}
render() {
return (
<ProgressWebView
ref={this.ref}
source={{ uri: 'https://facebook.github.io/react-native/' }}
/>
);
}
}
MIT