更新:この質問/回答以降、create-react-appポリフィルのアプローチとドキュメントが変更されました。ie11のような古いブラウザをサポートしたい場合は、ここにreact-app-polyfill
(ここに)含める必要があります。ただし、これには「...最小要件と一般的に使用される言語機能」のみが含まれるため、あまり一般的でないES6 / 7機能(などArray.includes
)には、以下のいずれかのアプローチを使用することをお勧めします。
これらの2つのアプローチは両方とも機能します。
1.react-app-polyfillおよびcore-jsからの手動インポート
react-app-polyfillとcore-js(3.0+)をインストールします。
npm install react-app-polyfill core-js
または yarn add react-app-polyfill core-js
polyfills.jsという(のような)ファイルを作成し、ルートindex.jsファイルにインポートします。次に、基本的なreact-appポリフィルに加えて、次のような特定の必要な機能をインポートします。
import 'react-app-polyfill/ie11';
import 'core-js/features/array/find';
import 'core-js/features/array/includes';
import 'core-js/features/number/is-nan';
import './polyfills'
...
2.ポリフィルサービス
polyfill.io CDNを使用して、次の行をindex.htmlに追加することにより、カスタムのブラウザー固有のポリフィルを取得します。
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=default,Array.prototype.includes"></script>
Array.prototype.includes
デフォルトの機能セットに含まれていないため、この機能を明示的にリクエストする必要がありました。
babel-polyfill
簡単なES6 +ポリフィルとして提供します。