LoginSignup
3
2

More than 3 years have passed since last update.

React Native「WebView」内で開いたサイトのリンクをsafariで開く

Last updated at Posted at 2019-10-31

概要

普段はReact NativeでIOSアプリを開発してます
今回はreactnativeのWebViewでサイトを開いた際に最初のページだけはアプリ内を、
開いた後のリンクはsafariで開く方法を共有します

アプリ登録は省略します

WebViewPage.js
import React, { Component } from 'react';
import { WebView, Linking } from 'react-native';

class WebViewPage extends Component {
  render() {
    const uri = 'https://qiita.com/';
    return (
      <WebView
        ref={(ref) => { this.webview = ref; }}
        source={{ uri }}
        onNavigationStateChange={(event) => {
          if (event.url !== uri) {
            this.webview.stopLoading();
            Linking.openURL(event.url);
          }
        }}
      />
    );
  }
}

export default WebViewPage;

動かなかったり、改善点など共有していただけると幸いです

参考文献

stackoverflow: React Native - open links in browser

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2