Skip to content
React Native Cross-Platform WebView
Java Objective-C TypeScript JavaScript Kotlin Shell Ruby
Branch: master
Clone or download
semantic-release-bot chore(release): 7.0.5 [skip ci]
## [7.0.5](v7.0.4...v7.0.5) (2019-09-09)

### Bug Fixes

* **types:** Export WebViewMessageEvent, WebViewNavigation for external use ([#855](#855)) ([be027da](be027da))
Latest commit 7d0c4a7 Sep 9, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
.github chore(Github Actions): Added detox.yml workflow Github Action (#843) Sep 4, 2019
.vscode feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
android fix(android): Move noisy debug logging out of "quiet" log level. (#844) Sep 4, 2019
bin Added starter setup script Aug 16, 2018
docs fix(iOS): UIWebView Removal (#828) Aug 30, 2019
ios fix(iOS): use RCTConvert to convert allowingReadAccessToURL. (#845) Sep 5, 2019
src fix(iOS): UIWebView Removal (#828) Aug 30, 2019
.all-contributorsrc chore(docs): add dvicory as a contributor (#576) May 17, 2019
.eslintignore feat(android): fix overflow issues and match iOS default renders (#472) Apr 2, 2019
.eslintrc.js feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
.flowconfig Add WebView Flow types Sep 11, 2018
.flowconfig.android Add WebView Flow types Sep 11, 2018
.gitignore feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
.prettierrc.js feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
.releaserc fix(semantic-release): Use git plugin to auto commit Oct 18, 2018
LICENSE WIP: iOS WKWebView Sep 8, 2018
README.md chore(Readme): updated DOCS Sep 2, 2019
babel.config.js feat(android): fix overflow issues and match iOS default renders (#472) Apr 2, 2019
index.d.ts fix(types): Export WebViewMessageEvent, WebViewNavigation for externa… Sep 9, 2019
index.js feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
jest.config.js feat(android): fix overflow issues and match iOS default renders (#472) Apr 2, 2019
package.json chore(release): 7.0.5 [skip ci] Sep 9, 2019
react-native-webview.podspec chore(podspec): Podspec source format fix (#681) Jul 2, 2019
tsconfig.json feat(typescript): Source code rewrite using typescript (#425) Mar 20, 2019
yarn.lock fix(deps): update dependencies to address security issues (#837) Sep 2, 2019

README.md

React Native WebView - a Modern, Cross-Platform WebView for React Native

star this repo PRs Welcome All Contributors Known Vulnerabilities

React Native WebView is a modern, well-supported, and cross-platform WebView for React Native. It is intended to be a replacement for the built-in WebView (which will be removed from core).

Core Maintainers - Sponsoring companies

This project is maintained for free by these people using both their free time and their company work time.

Platforms Supported

  • iOS
  • Android

Note: Expo support for React Native WebView started with Expo SDK v33.0.0.

Getting Started

Read our Getting Started Guide. If any step seems unclear, please create a detailed issue.

Versioning

This project follows semantic versioning. We do not hesitate to release breaking changes but they will be in a major version.

Breaking History:

Current Version: version

  • 7.0.1 - Removed UIWebView

  • 6.0.2 - Update to AndroidX. Make sure to enable it in your project's android/gradle.properties. See Getting Started Guide.

  • 5.0.1 - Refactored the old postMessage implementation for communication from webview to native.

  • 4.0.0 - Added cache (enabled by default).

  • 3.0.0 - WKWebview: Add shared process pool so cookies and localStorage are shared across webviews in iOS (enabled by default).

  • 2.0.0 - First release this is a replica of the core webview component

Upcoming:

  • this.webView.postMessage() removal (never documented and less flexible than injectJavascript) -> how to migrate
  • Kotlin rewrite
  • Maybe Swift rewrite

Usage

Import the WebView component from react-native-webview and use it like so:

import React, { Component } from 'react';
import { StyleSheet, Text, View } from 'react-native';
import { WebView } from 'react-native-webview';

// ...
class MyWebComponent extends Component {
  render() {
    return (
      <WebView source={{ uri: 'https://facebook.github.io/react-native/' }} />
    );
  }
}

For more, read the API Reference and Guide. If you're interested in contributing, check out the Contributing Guide.

Common issues

  • If you're getting Invariant Violation: Native component for "RNCWebView does not exist" it likely means you forgot to run react-native link or there was some error with the linking process

Contributing

See Contributing.md

Contributors

Thanks goes to these wonderful people (emoji key):

Thibault Malbranche
Thibault Malbranche

💻 🤔 👀 📖 🚧 ⚠️ 🚇 💬
Jamon Holmgren
Jamon Holmgren

💻 🤔 👀 📖 🚧 ⚠️ 💡 💬
Andrei Pfeiffer
Andrei Pfeiffer

💻 👀 🤔
Michael Diarmid
Michael Diarmid

💻 👀 🤔 🔧
Scott Mathson
Scott Mathson

💻 📖
Margaret
Margaret

💻 📖
Jordan Sexton
Jordan Sexton

💻 📖
Malcolm Scruggs
Malcolm Scruggs

💻 🔧 ⚠️
Momazo7u7
Momazo7u7

📖
Marco
Marco

📖
Julien Eluard
Julien Eluard

📖
Jian Wei
Jian Wei

💻 📖
Sergei Butko
Sergei Butko

📖
TMomemt
TMomemt

💻
Eric Lewis
Eric Lewis

💻 📖
Daniel Vicory
Daniel Vicory

💻 📖

This project follows the all-contributors specification. Contributions of any kind welcome!

License

MIT

You can’t perform that action at this time.