vuepress 项目支持ie运行

打印 上一主题 下一主题

主题 826|帖子 826|积分 2478

支持ie,就是js语法转换问题(es6 => es5),需要babel-loader, 以是需要修改webpack配置
在config.js里添加配置:
  1. configureWebpack: (config, isServer) => {
  2.         if(!isServer) {
  3.                 config.module.rules.push({
  4.                         test: /\.js$/,
  5.                         loader: 'babel-loader',
  6.                         options: {
  7.                                 presets: ['@babel/preset-env']
  8.                         }
  9.                 });
  10.                 //添加polyfill
  11.                 const file = config.entry.app[0];
  12.                 //此处也可用@babel/polyfill (应该会稍微新一点,支持的语法多点,因为体积好像大点)
  13.                 config.entry.app = ['babel-polyfill', file]
  14.         }
  15. }
复制代码
然后把用到的插件安装一下:npm i babel-loader '@babel/core' '@babel/preset-env' babel-polyfill -D
通过查资料,发现上边所述配置已经过时了,通过具体配置@babel/preset-env,可以实现按需引入,
大致是这么写:
  1. test: /.js$/i,
  2. exclude: /node_module/,
  3. use: {
  4.     loader: 'babel-loader',
  5.     options: {
  6.         presets: [
  7.             [
  8.                 '@babel/preset-env',
  9.                 {
  10.                     useBuiltIns: 'usage',
  11.                     corejs: 3
  12.                 }
  13.             ]
  14.         ],
  15.     }
  16. }
复制代码
但是我用到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企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

王海鱼

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表