webpackでPromiseを使用する(IE対策)

プログラミング
アイキャッチ
スポンサーリンク

前提

webpackを使用している。※webpackとは

webpack使用していなくても、解決策2なら問題ない

問題

非同期通信で使用するPromiseに関して、IE,Edgeでは使用できない。

解決策1(本題)

es6-promiseをインストールし、bundle.jsに含めた形にする。
これにより、CDNを使用する必要がなくなる。

npm install es6-promise
const config = {
entry:{...},
plugins: [
new webpack.ProvidePlugin({
Promise: 'es6-promise',
}),
],
}

解決策2

手っ取り早く、HTMLにスクリプト読み込むように設定。

  <!-- polyfillsを読み込むように設定 -->
<scriptsrc="https://www.promisejs.org/polyfills/promise-7.0.4.min.js"></script>
<scriptsrc="assets/js/bundle.js"type="text/javascript"></script>

使い方

MDN公式リンク

new Promise(function(resolve,reject){});

さいごに

全てのHTMLファイルに、CDN使用するように書くと、手間だったので、改善できてよかったです。
webpack便利ですね。

何か間違っている箇所があれば、ご教示よろしくお願いします。

コメント

タイトルとURLをコピーしました