Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
533 views
in Technique[技术] by (71.8m points)

现在究竟怎么用babel/polyfill配置兼容IE11啊?

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'
??????}
???]
]
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

用百度就是你的不对了。
??先说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
}]]
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...