【问题标题】:Babel 7 doesn't change CONST to VARBabel 7 不会将 CONST 更改为 VAR
【发布时间】:2018-09-17 07:30:38
【问题描述】:

我对 Safari 版本

我在控制台中收到此错误:

意外的关键字“const”。严格模式不支持 const 声明。

我尝试使用 @babel/preset-stage-0 但 babel 删除了它。

这是我的应用配置:

.babelrc

{
  "presets": [
    "@babel/preset-env",
    "@babel/preset-react"
  ],
  "plugins": [
    "@babel/plugin-transform-object-assign"
  ]
}

webpack.config.js

const path = require("path");
const webpack = require("webpack");
const componentName = "contact-captain";
const publicFolderRelativePath = "../../../../public/js";
const ignorePlugin = new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/);


module.exports = {
    // devtool: "source-map",
    output: {
        path: path.resolve(__dirname, publicFolderRelativePath),
        filename: `${componentName}.js`
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: "babel-loader"
                }
            }
        ]
    },
    plugins: [
        ignorePlugin
    ]
};

【问题讨论】:

  • 曹奥尔加。 “@babel/preset-stage-0 但 babel 删除了它”是什么意思?
  • 当我尝试构建我的项目时,我收到了这个错误:我们已经删除了 Babel 的舞台预设。请考虑阅读我们关于此决定的博客文章babeljs.io/blog/2018/07/27/removing-babels-stage-presets 我不确定改用什么
  • 好的。不知道。谢谢!
  • 我也有同样的问题。无论我在 .babelrc 中设置什么配置,它都不起作用...

标签: reactjs babeljs


【解决方案1】:

您是否尝试配置 preset-env ? 你可以在这里找到浏览器列表:https://github.com/browserslist/browserslist

可能需要在您的列表中添加Safari 8...

["@babel/preset-env", {
  "targets": {
    "browsers": ["last 2 versions"],
  }
}]

【讨论】:

  • 查看该列表,了解如何添加 safari 以及您需要的版本。这是一个经过很好测试的插件,我相信它可以按预期工作
  • 我试过这样: "browsers": [ "last 1 version", "> 0.25%", "Safari >= 7", "iOS >= 7" ] 而且,通过添加 . browserslistrc 文件。但似乎没有帮助
  • 那你肯定应该深入了解浏览器列表及其工作原理
  • 我遇到了同样的问题(const 没有被转换为 var 破坏 iOS .browserslistrc 帮助没有任何变化。当我运行npx browserslist 来查看浏览器时,它非常清楚地转储ios_saf 8。事实上,将我的 .browserslistrc 更改为“最近的 999 个版本”(这会导致 npx browserslist 转储一个非常大的列表)仍然并不能解决它
  • 嗨@stevendesu,因为它不能解决您的特定问题而对答案投反对票的想法可能并不是真正的精神。赞成票就在那里,因为它曾经真的帮助过某人......如果你没有找到你需要的东西,请尝试继续搜索并最终打开对 babel 项目本身的请求:)。我希望你尽快解决你的问题!干杯!
猜你喜欢
  • 2019-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-30
相关资源
最近更新 更多