前兩天一個首頁項目,想用vue玩耍一下,就用vue-cli搭建了一套vue的開發框架vue
完成開發、聯調和上線後,問題來了webpack
chrome、ff瀏覽器下都能正常顯示的頁面,在百度瀏覽器下愣就顯示不出來了es6
我還覺得是調用的uclogin組件包有問題呢,由於他會在url後面用?方式拼接一些formu、appid、u等參數,用於用戶登陸信息驗證成功後redirect到要去的頁面web
找來以前用過uclogin和已經應用過uclogin的系統,都沒有出現過這個問題,那麼這個鍋就不是uclogin來背了,那麼該誰來背這個鍋呢vuex
打開瀏覽器的debug工具窗口,看到有一個紅色的報錯警示:vuex requires a Promise polyfill in this browser.chrome
問題已經找到了,那如何來解決呢,百度一下:「vuex requires a Promise polyfill in this browser.」vue-cli
第一條搜索結果就是:npm
他說出了問題出現的緣由,就是ie9和一些低版本的高級瀏覽器對es6新語法並不支持,也說出瞭解決辦法瀏覽器
爲了方便看帖子同窗的使用,再重敲一遍命令行:npm install --save-dev babel-polyfillbabel
這個鍋vuex來背一半吧,另一半讓百度瀏覽器來背吧,誰讓你內核版本過低不支持es6新語法的呢。哈哈
然而送佛沒有送到西,只是說了要安裝babel-polyfill插件,如何使用可能對於一些剛鼓搗系統構建的同窗仍是有些懵逼的,這也是我寫此帖的目的,我來整理一下再補上這臨門一腳😄
babel-polyfill用正確的姿式安裝以後,引用方式有三種:
1.require("babel-polyfill");
2.import "babel-polyfill";
3.module.exports = {
entry: ["babel-polyfill", "./app/js"]
}
;
注:第三種方法適用於使用webpack構建的同窗,加入到webpack配置文件(webpack.config.js)entry項中
從新執行構建命令,在低版本的瀏覽器中就能夠正常打開頁面了。