支持ie,就是js语法转换问题(es6 => es5),需要babel-loader, 以是需要修改webpack配置
在config.js里添加配置:
- configureWebpack: (config, isServer) => {
- if(!isServer) {
- config.module.rules.push({
- test: /\.js$/,
- loader: 'babel-loader',
- options: {
- presets: ['@babel/preset-env']
- }
- });
- //添加polyfill
- const file = config.entry.app[0];
- //此处也可用@babel/polyfill (应该会稍微新一点,支持的语法多点,因为体积好像大点)
- config.entry.app = ['babel-polyfill', file]
- }
- }
复制代码 然后把用到的插件安装一下:npm i babel-loader '@babel/core' '@babel/preset-env' babel-polyfill -D
通过查资料,发现上边所述配置已经过时了,通过具体配置@babel/preset-env,可以实现按需引入,
大致是这么写:
- test: /.js$/i,
- exclude: /node_module/,
- use: {
- loader: 'babel-loader',
- options: {
- presets: [
- [
- '@babel/preset-env',
- {
- useBuiltIns: 'usage',
- corejs: 3
- }
- ]
- ],
- }
- }
复制代码 但是我用到vuepress里报错,看报错大概原因是,exclude: /node_module/, 这个配置,如果用了这个配置,那么依然会有语法没有被转换成功,去掉这个配置,会导致/node_modules/里的代码在转换时报错
具体可参考:https://blog.csdn.net/weixin_50794208/article/details/130830275
https://www.cnblogs.com/lijun12138/p/16163421.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |