前提
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>
使い方
new Promise(function(resolve,reject){});
さいごに
全てのHTMLファイルに、CDN使用するように書くと、手間だったので、改善できてよかったです。
webpack便利ですね。
何か間違っている箇所があれば、ご教示よろしくお願いします。
コメント