babel-polyfill的引用和使用
前两天一个首页项目,想用vue玩耍一下,就用vue-cli搭建了一套vue的开发框架
完成开发、联调和上线后,问题来了
chrome、ff浏览器下都能正常显示的页面,在百度浏览器下愣就显示不出来了
我还以为是调用的uclogin组件包有问题呢,因为他会在url后面用?方式拼接一些formu、appid、u等参数,用于用户登录信息验证成功后redirect到要去的页面
找来之前用过uclogin和已经应用过uclogin的系统,都没有出现过这个问题,那么这个锅就不是uclogin来背了,那么该谁来背这个锅呢
打开浏览器的debug工具窗口,看到有一个红色的报错警示:vuex requires a Promise polyfill in this browser.
问题已经找到了,那如何来解决呢,百度一下:“vuex requires a Promise polyfill in this browser.”
第一条搜索结果就是:
他说出了问题出现的原因,就是ie9和一些低版本的高级浏览器对es6新语法并不支持,也说出了解决办法
为了方便看帖子同学的使用,再重敲一遍命令行:npm install --save-dev babel-polyfill
这个锅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项中
重新执行构建命令,在低版本的浏览器中就可以正常打开页面了。