Skip to content

cawfree/react-native-webview-modal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

18 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

react-native-webview-modal

โš›๏ธ A <WebViewModal /> component for React Native, where the source content is pre-loaded for speed ๐Ÿ. Supports iOS/Android/Web/Expo.

Using react-native-webview-modal, you can embed content which can be presented without waiting for the page actually load. This is achieved by effectively pre-caching the render result and not making this visible until the modal is ready.

This helps provide a more native feeling experience when handing over to web-defined parts of the user journey, such as authentication with a web provider.

๐Ÿš€ Getting Started

yarn add react-native-webview react-native-webview-modal 

โœ๏ธ Example

You're required to declare a <WebViewModalProvider /> at the root of your application. This is because the react-native-webview-modal does not use React Native's built in <Modal /> component.

import React, { useState } from "react";
import { SafeAreaView, StyleSheet, View, Button } from "react-native";

import WebViewModalProvider, { WebViewModal } from "react-native-webview-modal";

export default function App() {
  const [visible, setVisible] = useState(false);
  return (
    <WebViewModalProvider>
      <View style={StyleSheet.absoluteFill}>
        <SafeAreaView />
        <Button
          title="Open"
          onPress={() => setVisible(true)}
        />
        <WebViewModal
          visible={visible}
          source={{ uri: "https://google.com" }}
        />
      </View>
    </WebViewModalProvider>
  );
}

โœŒ๏ธ License

MIT

About

โš›๏ธ A WebView <Modal /> component for React Native, where the source content is pre-loaded for speed ๐Ÿ. (iOS/Android/Web/Expo)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published