Edge 浏览器不支持变量结构的问题

发布于 2021-12-20 12:41:32 字数 1376 浏览 1167 评论 0

a. 问题

Vue 的项目在 Edge 上打开为空白页,报错信息为 Expected identifier, string or number

b. 解决

最终参考 stackoverflow: edge-script1028-expected-identifier-string-or-number 知道,Edge 浏览器不支持形如 let name = {...obj} 的解构语法。

途径是参考 Vue-CLI 创建的项目,参考它的 .babelrc 文件中获取有用的部分:

{
  "presets": [
    ["env", {
      "modules": false,
      "targets": {
        "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
      }
    }],
    "stage-2"
  ],
  "plugins": ["transform-vue-jsx", "transform-runtime"]
}

参考 https://babeljs.io/docs/en/presets 基本能确定需要增加 env 的配置。stage-2 包含了更多的规范,transform-runtime则提供了一些优化的功能。

尝试将三者都添加,会发现 stage-2 已经不被支持到 presets 中了,transform-runtime 则会引起其他的报错,仅保留 env的配置就可以,即:

$ npm install --save-dev @babel/preset-env

.babelrc 中的 presets 中增加如下配置,重启项目再在Edge上发现不再报错。

["@babel/preset-env", {
  "modules": false,
  "targets": {
    "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
  }
}]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

囚你心

暂无简介

0 文章
0 评论
494 人气
更多

推荐作者

遂心如意

文章 0 评论 0

5513090242

文章 0 评论 0

巷雨优美回忆

文章 0 评论 0

junpengz2000

文章 0 评论 0

13郎

文章 0 评论 0

qq_xU4RDg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文