react-native-webview

React Native Cross-Platform WebView

Github星跟蹤圖

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

star this repo
PRs Welcome
All Contributors
Known Vulnerabilities
NPM Version
Lean Core Extracted

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
  • macOS

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

  • 8.0.0 - onNavigationStateChange now triggers with hash url changes

  • 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):

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

License

MIT

Traduções

This readme is available in:

主要指標

概覽
名稱與所有者react-native-webview/react-native-webview
主編程語言TypeScript
編程語言Java (語言數: 10)
平台
許可證MIT License
所有者活动
創建於2018-09-09 08:14:44
推送於2025-09-14 23:02:30
最后一次提交2025-08-26 06:29:35
發布數324
最新版本名稱v13.16.0 (發布於 )
第一版名稱2.0.0 (發布於 2018-10-13 07:12:10)
用户参与
星數7k
關注者數55
派生數3.1k
提交數1k
已啟用問題?
問題數2772
打開的問題數43
拉請求數561
打開的拉請求數8
關閉的拉請求數377
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?