WebViewコンポーネントを使うことで、アプリ上からブラウザを起動して任意のWebページを表示させることができる。
react-native-webviewのインストール
以前まではreact-nativeからWebViewをインポートすることができていたのだが、現在はreact-nativeからWebViewが削除されたため、新たにreact-native-webviewをインストールする必要がある。
npm i react-native-webview
上記コマンドをプロジェクトルートで実行する。
WebViewコンポーネントのインポート
import React, { Component } from 'react';
import { WebView } from 'react-native-webview';
WebViewコンポーネントの基本的な使い方
まず、sourceにWebサイトのURLを指定する。
次に必ず必要なのがサイズの指定。
style属性で絶対値を使って厳密にサイズ指定をするか、scalesPageToFitにtrueを設定しないとコンポーネントを表示することができない。
今回はscalesPageToFit属性を使って画面幅いっぱいにコンポーネントを表示させることにした。
import React, { Component } from 'react';
import { WebView } from 'react-native-webview';
export default class App extends Component {
render() {
return (
<WebView
source={{uri: 'https://chusotsu-program.com/'}}
style={{marginTop: 20}}
scalesPageToFit={true}
/>
);
}
}
Expoを使った確認の際は必ず実機で確認を行うようにする。
WebViewはアプリ上でのブラウザ表示なので、PCブラウザだとコンポーネントが表示されないのだ。