2020年了!现在到底怎么才能正确用babel/polyfill?
很多帖子都是几年前的旧帖,是不是已经都失效了,最新的办法是什么?
求指点一个正确的好用的步骤!!
VUEcli + elementUI做的项目,chrome没问题,要求用IE11,
yarn run dev或build后全部都是空白页面,不显示东西,
几乎尝试了百度前10页所有查到的方法,没有一个生效的,之前有报错提示不支持promise什么的,添加了下面的配置之后倒是更加【完全空白】了,不进页面空白,连F12都不报错也是空白了…也就是虽然不报错,但是页面还是白的啊
是babel/polyfill版本问题? 看到个帖子说不用@babel/polyfill,而是分别装core-js@3 和regenerator-runtime
也没用!
下面这些 百度到的办法全做了,一律没有生效,
1
安装@babel/polyfill
("babel-polyfill":?"^6.26.0",)
main.js引入
import'@babel/polyfill'
添加要转的第三方
webpack 添加配置
config.entry('main').add("babel-polyfill"?'./src/main.js')
transpileDependencies:?[
'element-ui',
'vuex',
'lodash',
'path-to-regexp',
'vue-router',
'axios'
?],
config.module
??????.rule('js')
??????.test(/\\.js$/)
??????.include.add(resolve('/node\_modules/'))
??????.end()
??????.use('vue-loader')
??????.loader('babel-loader')
??????.end()
还有babel.config.js
module.exports\=?{
presets:?[
[
'@vue/app',
??????{
useBuiltIns:?'entry'
??????}
???]
]
}
###
用百度就是你的不对了。
??先说babel,7.4.0是一个分水岭,百度的估计都是7.4.0之前的配置方案(个别插件废弃 + 配置繁琐),你需要先到package.json看看babel版本。 关于7.4.0之前,之后两种配置的最佳实践,可以下面提到的文章?
??再说所谓的适配,你需要知道IE没有什么而你用了什么。比如,IE并没有内置Promise对象,babel也没帮你加入实现Promise的垫片(polyfill),而webpack编译后的js用了Promise,这就造成Promise not define
,你需要知道 1. 识别Promise 2. 明确知道Promise垫片在哪个babel插件里 3. yarn add/npm install 2的插件
。好了,带着这个目的,看下https://juejin.im/post/5d0373...
??回到本题,我没用过vue,也没看过vue的webpack源码。但.babelrc配置大同小异,这里给一下我react的配置可供题主参考。
{
"presets": [[
"@babel/preset-env", {
"useBuiltIns": "usage",
//"targets": {},
"corejs": 3
}],
"@babel/preset-react",
],
"plugins": [[
"@babel/plugin-transform-runtime", {
"corejs": 3
}]]
}
###请问解决了么
###
请教下,配了之后,IE11加载还是报缺少对象,请问下如何解决?
github issue链接:https://github.com/babel/babe...