Vue2 Cli4 项目低版本浏览器ES6语法报错处理

本文介绍了如何在Vue2Cli4项目中处理低版本浏览器遇到的ES6语法错误,涉及babel.config.js的preset配置以及如何针对项目依赖进行转译,以确保兼容性。
摘要由CSDN通过智能技术生成

Vue2 Cli4 项目低版本浏览器ES6语法报错处理


在低版本浏览器中你可能会遇到这样的错误SyntaxError: Unexpected token ‘...‘或者SyntaxError: Invalid regular expression flags之类的,这些错误可能就是因为项目代码或依赖中使用了ES6的语法,而低版本的浏览器是无法解析ES6语法的,因此会出现这样的错误。对于项目代码中的ES6语法问题,我们需要到babel.config中进行配置:

// babel.config.js
module.exports = {
  ...
  presets: [
    [
      // Vue CLI 提供的默认 preset
      // preset(预设配置):将特定的 ECMAScript 版本(通常是较新的版本)的代码转换为另一种目标版本,以确保代码在目标环境中的兼容性
      '@vue/cli-plugin-babel/preset',
      {
        // 这个选项告诉 Babel 在代码中遇到需要 polyfill 的地方,根据 entry 配置按需引入 polyfill。
        // polyfill 是一些代码片段,用于为不支持某些新特性的旧浏览器提供相应的支持。
        useBuiltIns: "entry",
        // targets: 指定了项目的目标浏览器环境和版本。
        // 如果 targets 不指定,Babel 将默认使用全局环境,并且尽量生成与当前 Node.js 版本相匹配的代码。
        // 这意味着 Babel 将不会为特定的浏览器版本进行优化,而是生成一个在当前环境中运行的代码。
        targets: {
          ie: "11",
          chrome: "49",
        }
      }
    ]
  ]
}

除了项目代码以外,有些依赖也可能是使用了ES6语法,那这些依赖就需要在vue.config中指明需要通过babel进行转义。

module.exports = {
  ...
  // 配置需要通过Babel进行转译的依赖模块(dependencies)
  // 如果项目依赖某些模块,而这些模块的代码并不符合当前Babel配置
  // 那可能需要使用transpileDependencies来告诉Vue CLI对这些模块进行额外的转译,以确保它们能够在项目中正常工作。
  transpileDependencies:['element-ui','highlight.js']
}

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值